많은 테이블을 호스팅하는 포커 게임 서버를 고려해보십시오. 로비에있는 동안 플레이어는 모든 활성 테이블과 통계를 볼 수 있습니다. 이 통계는 플레이어가 테이블에 가입하고 게임을하며 떠날 때마다 지속적으로 변경됩니다. 테이블을 추가하고 닫을 수 있습니다. 어쨌든 이러한 변경 사항은 클라이언트에 알려야합니다.많은 클라이언트와 서버의 목록을 동기화하는 방법은 무엇입니까?
이 기능을 구현하는 방법은 무엇입니까? 로비에 TCP/UDP를 사용 하시겠습니까? (즉, 사용자가 로비를 관찰하기 위해 서버에 연결해야합니까, 아니면 요청 - 응답 메커니즘을 사용할 것입니까?) 서버가 클라이언트에게 각 이벤트를 알리겠습니까? 아니면 클라이언트가 서버를 폴링해야합니까?
명심하십시오. 아마도 이러한 시스템의 가장 중요한 목표는 확장 성입니다. 모든 사용자는 여러 대의 서버로 구성된 하나의 큰 목록을보아야하는 반면, 더 많은 서버를 추가하여 쉽게 처리 할 수 있어야합니다.
내가 확장성에 대해 메모하는 이유는 정확한 사양을 알지 못한다는 것입니다.하지만 예를 들어 반복적으로 업데이트되는 활성 테이블 목록이있는 온라인 포커 게임의 로비를 예로 들겠습니다. 구체적인 번호가 필요하다면 PokerStarts에 200,000 명의 플레이어와 30,000 개의 테이블이 있습니다 – Meat