Couchbase как замена memcached + repcached?
У меня есть группа серверов, которые в настоящее время используют как memcached, так и repcached бок о бок (прослушивание на разных портах). Сервис memcached используется для хранения локальных данных, которыми не нужно делиться. Экземпляр repcached используется для совместной работы пар серверов.
Когда я нашел Couchbase, я был очень взволнован, потому что, похоже, он позволил бы мне:
- Сделайте некоторые данные постоянными
- Поделиться с более чем двумя узлами
- Оставьте большую часть моего кода как есть, так как он использует memcached API
Поэтому я установил Couchbase, но столкнулся с проблемой - не похоже, что есть способ настроить два кластера на одном сервере. Мне бы хотелось, чтобы один кластер не использовался совместно с другими серверами, а второй - совместно с другими серверами.
Да, я мог бы настроить несколько выделенных серверов для Couchbase для создания разных кластеров, но у меня достаточно ресурсов CPU + ram на серверах, на которых в данный момент работает memcached + repcached, поэтому я предпочел бы просто заменить эти службы на Couchbase.
Можно ли запустить два экземпляра Couchbase на одном хосте? Я понимаю, что мне придется изменить некоторые порты вокруг. Я просто не видел, чтобы кто-нибудь говорил о чем-то подобном, поэтому я думаю, что ответ "нет"... но мне пришлось спросить, потому что похоже, что Couchbase идеально подойдет для моих нужд.
Если это не сработает, меня заинтересуют любые альтернативные предложения. Например, одна из моих идей заключалась в том, чтобы использовать Memcached + MemcacheDB для эмуляции постоянного необщедоступного кластера Couchbase. Однако мне не нравится тот факт, что MemcacheDB не поддерживает записи с истекающим сроком действия, и я бы предпочел не писать подпрограмму для удаления миллионов записей каждый месяц (а затем задаться вопросом, снизится ли производительность со временем).
Любые мысли будут оценены.:-)
1 ответ
Лучшее решение здесь, вероятно, состоит в том, чтобы запустить один экземпляр Couchbase и создать одну корзину memcached и одну корзину Couchbase. Ведро memcached не будет иметь постоянства и будет функционировать точно так же, как memcached. Другое ведро будет иметь постоянство и поддерживает API memcached. Вы можете создать столько блоков, сколько хотите на одном сервере Couchbase.
Другой вариант - виртуализировать и запустить сервер Couchbase на каждом виртуальном сервере.