Hi all, It took me much longer than I expected to deliver the first version of my project that I am happy with. But finally version v0.1 is here:
https://github.com/ademakov/MainMemory/releases I expect next versions to come out much faster. Regards, Aleksey On Tuesday, February 23, 2016 at 10:44:38 PM UTC+6, Aleksey Demakov wrote: > > Hi all, > > I've been silently working on my own memcached clone for quite some > time. Apart from implementing the memcached protocol I wanted to get > a reusable framework for other kinds of servers, so in a way memcached > was a testbed for a network library competing e.g. with libevent and libuv. > > The project is located here: https://github.com/ademakov/MainMemory > > I am about to make the very first release of the project fixing the last > known issues. It is not yet ready for real life use, but just to play > around > with it. > > For those who cannot find a better use of their time I welcome if they try > it and report any problems, issues, suggestions. > > The key features of the framework: > > * co-operatively scheduled fibers running on top of OS-level threads; > * concurrent event loop with lock-free thread notification mechanism; > * memory allocation mechanisms that try to avoid locks as much as > possible. > > The memcached-related features are nothing special, just regular text > and binary protocol via TCP. The internals are a bit different however: > > * no slabs, all items are allocated in a single dlmalloc space; > * use clock eviction algorithm instead of LRU; > * there is experimental code that uses ring-buffer-based combiners > instead of locks for synchronization. > > Generally, IMHO, my version is written in a more modular fashion than > the original memcached. So it should be more open for those who are > interested to modify it for e.g. their research purposes and such. > > Regards, > Aleksey > > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
