Ответ 1
Я только начал заниматься исследованиями для использования Zookeeper для ряда случаев в инфраструктуре моих компаний.
Тот, который, по-видимому, подходит для ZK, является лучшим из того, где мы имеем массив из 30 + динамических серверов контента, которые в значительной степени зависят от кэширования на основе файлов (Memcached работает слишком медленно). На каждом из этих серверов будет агент, наблюдающий определенный путь ZK, и при появлении нового node все серверы присоединяются к блокировке блокировки, а затем, когда все они присутствуют, все они обновляют свою конфигурацию в одно и то же время. Таким образом, мы можем поддерживать согласованность всех конфигураций/состояний выполнения 30 серверов.
Второй вариант использования, мы получаем 45-70 миллионов просмотров страниц в день в типичной колоколообразной кривой, подобной шаблону. Стратегия кэширования выполняется от клиента, до CDN, до memcache, а затем до кэша файлов, прежде чем определять, когда делать вызов БД. Даже с серией замков на месте, это довольно типично, чтобы получить условия гонки (я прозвал их штампами), которые могут напрягать наши бэкэнда. Надеемся, что ZK может предоставить инструмент для разработки последовательной и единой службы блокировки на нескольких серверах и, возможно, в центрах обработки данных.