문제

내 질문에 계속 클라이언트 서버 아키텍처 응용 프로그램의 성능을 향상시키는 방법

중앙 집중식 데이터베이스와 여러 슬레이브 서버-데이터베이스 구성을 유지하기로 결정했습니다. 나는 사용할 계획이다 대칭 DS 슬레이브와 마스터 데이터베이스 사이를 복제합니다. 각 서버-사장 구성은 클라이언트에 더 가깝게 설치됩니다. 이상적으로는 명백한 이유 때문에 클라이언트의 가장 가까운 슬레이브 서버-가사베이스로의 요청을 원합니다. RMI를 사용하여 서버에 연결하기 때문에 현재 사용 가능한 제품/API가 있는지 알고 싶습니다.

위의 다른 솔루션 이외의 다른 솔루션은 높이 평가됩니다 :)

참고 : 클라이언트 코드를 리팩토링하는 것은 확실히 하나의 대안이지만 응용 프로그램은 매우 거대하기 때문에 큰 위험 (기존 코드를 위반할 수 있음), 시간이 걸리고 비싸다.

도움이 되었습니까?

해결책

분산 및 일관된 해싱을 살펴보십시오.

http://en.wikipedia.org/wiki/distributed_hash_table#keyspace_partitioning http://en.wikipedia.org/wiki/consistent_hashing

Barebones, 당신은 클라이언트의 식별자를 가져 와서 ( '키'대신) 가장 가까운 서버를 찾을 수있는 일관된 해싱의 변형을 설정합니다. 보너스 혜택은 노예 중 하나가 다운되면 인프라가 다음 가장 가까운 서버로 투명하게 경로를 향한 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top