저는 현재 memcached과 repcached을 나란히 사용하는 서버 그룹을 가지고 있습니다 (다른 포트에서 수신 대기). memcached 서비스는 공유 할 필요가없는 로컬 데이터를 저장하는 데 사용됩니다. repcached 인스턴스는 서버 쌍이 협업 할 수있게하는 데 사용됩니다. 내가 카우치베이스 주식회사를 발견했을 때 그것은 나에게 허용 할 것처럼 보이기 때문에Couchbase를 memcached + repcached 대체품으로 사용 하시겠습니까?
는 정말 흥분했다 :
- 가 두 개 이상의 노드와 일부 데이터 지속적
- 공유합니다
- 로 내 코드의 대부분을 남겨주세요 - 그것은 memcached API를 사용하기 때문에.
그래서 Couchbase를 설치했지만 문제가 발생했습니다. 같은 서버에 두 개의 클러스터를 설정하는 방법이없는 것처럼 보입니다. 다른 서버와 공유하지 않는 클러스터 하나와 다른 서버와 공유하는 두 번째 클러스터를 원합니다.
그래, 내가 다른 클러스터를 만들 Couchbase에 대한 전용 서버를 설정할 수 있지만 CPU를 많이 가지고있어 램 + 현재 그 memcached + repcached를 실행하는 서버에 여분의 그 서비스를 대체하는 것을 선호하고 싶습니다 Couchbase.
동일한 호스트에서 두 개의 Couchbase 인스턴스를 실행할 수 있습니까? 나는 몇몇 항구를 주변에 바꾸어야 할 것이라는 점을 알고있다. 나는이 같은 것을하는 것에 대해 이야기하는 사람을 보지 못했기 때문에 나는 대답이 "아니오"라고 생각하고있다. 그러나 Couchbase가 나의 요구에 완벽 할 것 같기 때문에 나는 물어야 만했다.
이것이 작동하지 않는다면 어떤 대안이든 제안 할 수 있습니다. 예를 들어, 내가 가진 한 가지 아이디어는 Memcached + MemcacheDB을 사용하여 지속적인 비공유 Couchbase 클러스터를 에뮬레이션하는 것입니다. 그러나 MemcacheDB가 만료되는 레코드를 지원하지 않는다는 것과 매월 수백만 개의 레코드를 삭제하는 루틴을 작성하지 않아도된다는 점 (그리고 성능이 시간이 지남에 따라 저하 될지 궁금합니다.)이 마음에 들지 않습니다.
의견을 보내 주시면 감사하겠습니다. :-)
잠시 시간을내어 의견을 보내 주셔서 감사합니다. memcached 버킷이 "memcached와 정확히 똑같이 작동합니다"라고 말하면 전체 클러스터에 걸쳐 있지 않을 것이라고 말합니까? 두 번째 Couchbase 서버를 별도의 VM에서 실행한다는 생각은 내가 생각했던 것보다 단순한 솔루션을 기대하고있었습니다. – Jeremy
memcached 버킷은 사용자가 묻는 것이면 복제를 제공하지 않습니다. 하지만 클러스터에 다른 서버를 추가하면 memcached 버킷에 더 많은 메모리가 추가됩니다. 예를 들어 크기가 2GB 인 하나의 memcached 버킷이있는 서버가 3 대있는 경우 클러스터는 해당 버킷에 대해 6GB를 사용할 수 있습니다. 다른 서버를 추가하면 클러스터의 사용 가능한 공간이 8GB가됩니다. 또한, Couchbase SDK를 사용하면 클라이언트는 다른 서버가 즉시 추가 된 것을 인식합니다. – mikewied