Что такое хорошая функция для сопоставления идентификатора с memcache в пуле серверов? - PullRequest
0 голосов
/ 23 октября 2010

Что-то вроде:

host = getHost(id)
>>> 172.16.25.52

В идеале алгоритм должен минимизировать количество пропусков кэша при расширении / сокращении пула серверов.

Есть ли какие-нибудь известные алгоритмы, которые делают это? Или библиотеки (я использую Python).

Спасибо.

1 Ответ

1 голос
/ 23 октября 2010

Библиотека memcached делает это по умолчанию. Таким образом, вы можете просто прочитать код из хранилища: http://bazaar.launchpad.net/~python-memcached-team/python-memcached/trunk/annotate/head%3A/memcache.py#L274

Что касается минимизации потерь кэша с расширяющимся / сжимающимся пулом ... сделать это сложно. Либо вы сначала неправильно делите серверы, либо это будет менее оптимально при расширении / сокращении. Если у вас будет максимум N серверов, это может быть проще, поскольку вы можете сделать пару предположений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...