2012-03-02 3 views
0

IP 주소를 추가하고 연결하면 클라이언트가 모든 서버의 사용 가능한 IP 주소를 가져 옵니까?Membase? 이게 어떻게 작동합니까?

클라이언트가 둘 중 하나의 IP 주소가 다운되었을 때 적어도 2 개의 IP 주소를 알아야합니까?

내가 함께 테스트했던 코드 (JAVA) 나는 오직 하나의 IP 주소를 추가 한 경우

List addrList = new ArrayList(); 
addrList.add("192.168.20.105:11211"); 
addrList.add("192.168.20.106:11211"); 
addrList.add("192.168.20.101:11211"); 

try { 

List addr = AddrUtil.getAddresses(addrList); 
mbsClnt = new MemcachedClient (new BinaryConnectionFactory() , addr); 

, 내가하고 있던 동안은 GET 및 SET를 조작하고 서버가 내려갑니다. 클라이언트가 다른 사용 가능한 서버에 연결할 수 있습니까? 옵저버를 추가하고 사용 가능한 서버를 보면 아무 것도 볼 수 없기 때문에 (목록에 서버를 하나만 추가하면) 연결 실패를 피하기 위해 최대한 많은 IP 주소를 추가해야한다는 의미입니까?

또 다른 질문은 IP 주소를 추가 할 때 특정 vBucket에 연결된 PORT 번호를 넣어야한다는 것입니다. 모든 클라이언트가 동일한 vbucket을 보도록 만드는 데 오버플로가 발생합니까? 그렇다면 어떻게 다른 vBuckets를 보도록 클라이언트의 균형을 유지해야합니까?

죄송합니다. 내 영어가 정말로 당신에게 오지 않는다면 죄송합니다.

어떤 종류의 조언이나 답변을 주시면 감사하겠습니다. 감사!

답변

0

여기의 문제는 MemcachedClient에서 memcached 생성자를 사용하는 것입니다. 2.7.x 이하에서는 URI, 버킷 이름 및 암호 목록을 사용하는 생성자를 사용하려고합니다. 이 생성자는 Membase/Couchbase 노드에 연결하고 클러스터의 모든 서버 목록을 가져옵니다. 그런 다음 노드 균형을 조정하거나 장애 조치를 수행하면 Spymemcached가 올바른 작업을 수행하고 새 노드에 연결하거나 클러스터를 떠나는 노드에 대한 연결을 끊습니다.

Spymemcached 2.8.x 이상에서는 실제로이 기능을 제거하고이를 Couchbase Client라는 새 프로젝트에 포함 시켰습니다. 그 프로젝트에서 위에서 언급 한 생성자 만 찾을 수 있습니다. 이것은 당신이해야 할 일에 대해 더 명백하게해야합니다. 현재 Couchbase Client 1.0.1은 뷰를 지원하지 않지만 다음 릴리즈에서 추가 될 것입니다. 또한 Couchbase Client는 모든 버전의 Membase와 호환됩니다.

다른 하나. 클러스터에있는 모든 노드의 목록을 가져 오기 위해 하나의 URI 만 제공하면되지만 클러스터에 서버가있는 것과 동일한 수의 URI를 추가하는 것이 좋습니다. 그 이유는 URI에서 지정한 노드가 다운되면 클러스터 업데이트를 가져올 수 없으므로 클러스터 연결이 끊어지기 때문입니다. 둘 이상의 URI를 지정하면 Spymemcached/Couchbase Client는 URI 목록에서 다음 노드에 연결을 시도합니다.

+0

음 Membase를 사용해야했습니다. couchbase ..가 처음이 아닙니다. Observer를 코드에 추가하고 getAvailableServers를 보았습니다. 그러나 하나의 URI 만 추가하면 사용 가능한 서버가 하나만 표시됩니다. 그래서 나는 아직도 클라이언트가 클러스터의 모든 서버 목록을 얻는 것에 대해 혼란 스럽다. 이걸 확인할 수있는 방법이 있습니까? 또한 Membase의 다양한 종류의 배포를 보았습니다. 나는 "고객 측의 뜸"에 혼란을 겪고 있습니다. 나는이 정의를 얻지 못한다 ... 나는 어떤 예나 그것이 어떻게 작동 하는지를 알 수 있다면 좋을 것이다. THX : D –

+0

이 토론을 Couchbase 포럼으로 옮기십시오. 나는이 토론에 대해 stackoverflow가 잘 작동한다고 생각하지 않습니다. http://www.couchbase.com/forums/thread/wondering-how-couchbase-works-situation – mikewied

+0

hmm 적절합니까? 나는 couchbase와 membase 사이의 호환성을 궁금해했다. 완전히 정확합니까? apis를 포함해서? 이 둘의 유일한 차이점은 DB입니까? –

관련 문제