Я просматриваю документацию и меня немного смущает вопрос, как 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])
Будет ли это автоматически устанавливать и получать каждый ключ с нужного сервера? Нужно ли писать класс-оболочку?
Спасибо.