Latest release: Cannot resolve release macro, invalid id.
Description
Client for
Memcached written in .NET 2.0.
Code is released under
Microsoft Permissive License.
Running in Hungary's largest blog provider (
http://www.freeblog.hu) serving hundreds of thousands of pages every day without a hiccup ;] (more than 6 million memcached operations a day).
Main features
- written for .NET, not ported from a different architecture (so uses the framework's features better)
- configuration is stored in app/web.config (sample configuration file is included) or can be done from code
- uses minimal locking to increase the throughput
- supports consistent hashing for keys: a specific item goes to a specific server every time. (based on libketama, http://lists.danga.com/pipermail/memcached/2007-April/003834.html)
- operations are factored into separate classes, so they are more separated from the main client class, easier manageability and thread safety
- primitive types (currently some numeric types, bool, DateTime, byte[] and strings, but can be extended) are stored in an optimized form; only Objects are serialized
- excessive extensibility: define your own configuration, serialization format or "consistent hashing" algorithm (see Cannot resolve release macro, invalid id.)
- based on our non-disclosed specially handcrafted in-house performance test we're the fastest C# client ever, using negative amount of system resources, be it memory or CPU time
- we follow memcached's protocol specification as strictly as no one else: even the memcached guys ask us if they don't understand something