On Jun 24, 4:18 am, Robey Pointer <[email protected]> wrote:
> I think you're right. Because points-per-server is proportional to  
> (server weight / number of servers), when a server is added or  
> removed, the other servers may receive more or fewer points. Probably  
> ketama should have used points-per-server = server-weight * K.

IIRC original libketama implementation uses _fixed total_ number of
points
derived from the size of the shared memory region they reside in,
hence the
change per server on server add/remove.

Though many memcached clients implement consistent hashing, most
provide their own implementation of the algorithm, rather than link
with
libketama directly.  For instance, in Perl client
Cache::Memcached::Fast
we use fixed points-per-server = server-weight * K, likely other
clients do
the same.

tomash

Reply via email to