Tags: pointerzz/java-memcached-client
Tags
Changes since 2.1: * Data decoding occurs in caller threads instead of IO thread. This should greatly improve performance by spreading out the load to more threads. (Kristian Eide) * MemcachedClientIF is added as an interface the client represents. This allows a client making use of the interface to mock the memcached interaction for better test coverage (Nelz) * Binary protocol stat support (protocol wasn't complete until October 19). * Async incr/decr with no default (Nick Brachet) * Whalin V1 transcoder (Boris Partensky) * Stats subcommands are now supported. * Removed delete with hold support (pulled from server in 1.3). * Miscellaneous bug fixes. Contributors: 22 Dustin Sallings 2 Boris Partensky 2 Kristian Eide 2 Nelz 2 Nick Brachet 1 Robey Pointer
RC for 2.2. Changes since 2.1: * Data decoding occurs in caller threads instead of IO thread. This should greatly improve performance by spreading out the load to more threads. (Kristian Eide) * MemcachedClientIF is added as an interface the client represents. This allows a client making use of the interface to mock the memcached interaction for better test coverage (Nelz) * Binary protocol stat support (protocol wasn't complete until October 19). * Async incr/decr with no default (Nick Brachet) * Whalin V1 transcoder (Boris Partensky) * Removed delete with hold support (pulled from server in 1.3). * Miscellaneous bug fixes. Contributors: 19 Dustin Sallings 2 Boris Partensky 2 Kristian Eide 2 Nelz 2 Nick Brachet 1 Robey Pointer
RC for 2.2. Changes since 2.1: * Data decoding occurs in caller threads instead of IO thread. This should greatly improve performance by spreading out the load to more threads. (Kristian Eide) * MemcachedClientIF is added as an interface the client represents. This allows a client making use of the interface to mock the memcached interaction for better test coverage (Nelz) * Miscellaneous bug fixes. Contributors: 6 Dustin Sallings 2 Kristian Eide 2 Nelz 1 Nick Brachet 1 Robey Pointer
2.1 release Main features since 2.0: * Operation timeouts for blocking operations. * Support for append and prepend. * Optional Whalin compatible transcoder. * Canned connection factory for Ketama compatible consistent hashing. * More tweakability with respect to operation queue sizes.
2.1rc3 includes a couple bug fixes and a convenience feature: 1) The three internal queues can be sized individually. 2) Fixed an elusive NPE in a partial read in bin. 3) Brought in Nelz' consistent hash convenience factory. Regarding #1, it's pretty easy to overflow a read queue by having a giant write queue such that the write queue's short commands going out can get drained fairly quickly and set up for read, but there's no room for the reads. With new connection factory methods, it's both easy to simulate that as well as size appropriately for your application in such a way that might avoid it. The defaults should probably be fine for everyone, of course. The effect of dustin#2 was mostly that one of my tests occasionally failed. It was a real bug though and would've sucked for someone someday. The KetamaConnectionFactory can be used place of DefaultConnectionFactory to get a stock ketama setup. I don't particularly like the KETAMA_HASH (md5), but the goal is to have a few configurations on the shelf that one can choose from.
2.0 has been a long time coming. The initial reason for it to exist was protocol abstraction (specifically to implement the binary protocol). The slowness of the binary protocol release has kept this dangling for quite a while. Although there still isn't a released binary server, I want to get this release out because there are a lot of other good things that have happened since: * CAS * Hash implementations and tests * node location algorithms (e.g. ketama consistent hashing) * Lots of fixes. There are still things to do, but much of what people have been asking for can be found within. this release and all of the bugs that have been reported to-date have been fixed.
PreviousNext