scylladb / seastar

High performance server-side application framework
http://seastar.io
Apache License 2.0
8.28k stars 1.54k forks source link

Move LSA from scylladb into Seastar #193

Open nyh opened 8 years ago

nyh commented 8 years ago

ScyllaDB's LSA (Log-Structured Allocator) could be useful for many Seastar applications which need to fill the entire memory they are given with some sort of data cache, and need to deal with evicting from this cache when the memory is depleted, and deal with memory fragmentation which means that simply evicting a bunch of old pieces of data does not necessarily open up a contiguous hole of the requested size (which is why LSA moves objects around memory).

I suggest that we move LSA into Seastar, and document it extensively in the Seastar tutorial. The presentation from @pdziepak is a good start of such documentation.

LSA could probably be used, for example, in projects such as Seastar memcached and pedis (Redis using Seastar).

fastio commented 7 years ago

It's a really good advice. Do you have plans to do it? @nyh