Я просматриваю документацию, и я немного смущен тем, как memcache выполняет внутреннюю балансировку нагрузки, если указано несколько серверов. Например:Использование нескольких серверов memcache в пуле
import memcache
mc.set_servers(['127.0.0.1:11211','127.0.0.1:11212',])
mc.set("some_key", "Some value")
print mc.get("some_key")
Будет ли установка и извлечение ключа «some_key» всегда попадающим на тот же сервер? Будет ли автоматически распределяться настройка и выбор альтернативных ключей, таких как «some_key_2» или «some_key_3», среди пула серверов? Что произойдет, если сервер добавлен или удален?
Точно так же, что происходит с get_multi:
import memcache
mc.set_servers(['127.0.0.1:11211','127.0.0.1:11212',])
mc.set_multi({42: 'adams', 46 : 'and of me'})
print mc.get_multi([46, 42])
Будет ли это автоматически устанавливать и получать каждый ключ от правого сервера? Нужно ли писать класс-оболочку?
Спасибо.
Правильно, поэтому он будет прозрачно делать это, если в пуле несколько серверов? get_multi() будет автоматически извлекать правильные ключи с правильных серверов? – ensnare
Это то, что он должен делать - библиотека memcached делает это под обложками. Если это не так, тогда есть ошибка. –
Это здорово ... Я не знал, что это автоматически. Я думал, что должен написать класс-оболочку. Благодарю. – ensnare