2011-09-19 14 views
0

말해, 나는 predis 연결 풀에 N 개의 서버가 있습니다. 서버 중 하나가 작동을 멈추었을 때 predis가 작동하지 않는 것으로 나타났습니다. 즉, 서버 Si가 다운 된 경우 새 predis/client (s1, s2, ...)가 성공적으로 반환되지 않습니다. 첫째, 실패한 서버의 항목은 수동으로 제거해야하며이 작업이 재개 된 후에 만 ​​제거해야합니다. predis는 일관된 해싱을 사용한다고 주장하므로 predis가 서버 중 어떤 서버가 응답하지 않는지 (& 실패) 자동으로 감지하고 실패한 서버에 저장된 키를 다른 작동중인 서버에 배포해야하지 않습니까?Predis - 연결 풀에서 서버 제거

답변

0

Predis는 일관된 해싱을 사용하지만 풀의 모든 서버가 가동되어 응답하는지 확인해야합니다. 서버 가용성 모니터링은 일관된 해싱과 본질적으로 함축되어 있지 않습니다.

연결을 시도하기 전에 각 서버를 검사하고 검사를 기반으로 연결 풀을 수정할 수 있습니다. 풀의 사용 가능한 서버 목록을 다른 위치에 저장하고 사용 가능한 서버 목록을 지속적으로보고 수정하는 다른 프로세스가있을 수 있습니다. 당신은 단지 그것들이 항상 모두 작동하고 있다고 가정하고, 실패시 어떤 것들을 제거해야하는지 확인하거나, 위의 것들을 조합해서 사용할 수 있습니다. 최종선은 predis가, 지금, 당신을 위해 그것을하지 않는다이다.

관련 문제