2017-09-21 1 views
1

저는 두 명의 사용자가 시계와 경쟁하는 게임을 만들고 있습니다. 각 플레이어는 가능한 한 많은 질문에 정확하게 대답 할 수있는 60 초를 가지고 있습니다. - Socket.io를 사용하여 서버의 낭비 자원 클라이언트 쪽 시간 유지는 서버 쪽 시간 유지와 일관성이 있습니까?

  • 가 핸들

    1. 초마다 서버에서 클라이언트로 남은 시간을 보내기 :

      나는 시간을 유지하는 두 가지 잠재적 인 접근 방식을 가지고 클라이언트 쪽에서 카운트 다운하지만 60 초 후에 서버에서 신호를 보내 게임을 종료합니다 - 각 플레이어의 카운트 다운이 동기화되지 않을 수 있음

    제 질문은 이것입니다 : 클라이언트 측 카운트 다운이 두 클라이언트간에 합리적으로 일치합니까?

    클라이언트 측에서 구현되는 경우 JavaScript에서 setInterval()을 사용합니다.

  • 답변

    1

    실제 상태는 서버에서 유지되어야하며 클라이언트는 서버 응답 상태에 따라 동기화 (업데이트 상태)해야합니다. 기본적으로 사용자가 지체를 느낀다면 그는 시간을 막기보다는 시간을 잃어 버리게됩니다. 이것은 또한 값을 변경하여 클라이언트 측의 치트타를 방지합니다.

    각 진드기마다 클라이언트는 서버의 실시간 정보를 알아야합니다.

    관련 문제