Так как для оптимальной производительности рекомендуется группировать связанные ключи, которые часто извлекаются вместе (используя multiGet) на одном сервере, у меня есть пара вопросов относительно неявной механики, используемой клиентскими функциями, созданными для этого.
Я видел два разных подхода к служению, как я полагаю, одной цели с использованием libmemcache (в частности, php-memcached). Первый и наиболее очевидный подход - использовать getByKey / setByKey для сопоставления ключей с серверами, а второй - использовать опцию OPT_PREFIX_KEY (есть простой пример, размещенный в документации php под конструкцией memcached :: _), который в соответствии с документацией msgstr "используется для создания" домена "для ваших ключей элементов". Предостережение в отношении второго подхода заключается в том, что он может быть установлен только для каждого отдельного экземпляра, что может быть, а может и не быть хорошим.
Так что, если я полностью не ошибаюсь, и эти два подхода на самом деле не служат одной и той же цели; это какая-то явная выгода для того, чтобы идти с подходом по сравнению с другим?
И в то время как я нахожусь на этой теме, мой другой вопрос был бы: Каковы последствия, если таковые имеются, для сопоставления ключей с серверами в последовательно хэшируемом сценарии? Я предполагаю, что в случае сбоя узла ключ произвольной формы будет просто переназначен на новый сервер без каких-либо проблем.
Спасибо!