▲neo 1달전 | parent | favorite | on: GN⁺: 체스사이트 Lichess.org에서 한 수를 둘 때 일어나는 일(davidreis.me)Hacker News 의견 체스.com의 시간 구조에 대한 불만이 있음. 서버가 시간을 추적하는 것 같아 전송 시간과 지연을 무시하는 것 같음. 모바일 클라이언트에서 시간 제한 게임을 할 때 특히 불편함 네트워크 코드의 문제일 수도 있으며, 퍼즐에서 오류가 자주 발생함 Chess.com의 기술이 거칠게 느껴짐 Lichess는 StackOverflow 접근 방식을 선택했으며, 강력한 서버를 사용함 게임 상태를 주기적으로 저장하지만, 어디에 저장하는지는 명확하지 않음 게임당 비용이 매우 낮음: $0.00027, 3,671 게임당 1달러 단일 데이터센터 의존성으로 인해 10시간의 중단이 발생한 적이 있음 서버 측에서 움직임을 계산하는 것은 일관성을 보장하고, 제한된 처리 능력이나 에너지를 가진 클라이언트의 성능을 최적화함 새로운 플랫폼에서 오픈 소스 소프트웨어 클라이언트의 구현 장벽을 낮추기 위한 것일 수 있음 체스 규칙 구현이 번거로울 수 있으며, Lichess도 한때 논리 오류가 있었음 Redis pub/sub 채널에서 메시지 손실을 어떻게 처리하는지 설명이 부족함 "l" 매개변수는 서버에서 관찰된 지연을 나타내는 것일 수 있음 서버가 모든 합법적인 다음 움직임을 열거하고 전송하는 것이 놀라움 제한된 클라이언트에 유리할 수 있지만, 클라이언트 측에서 계산하는 것보다 저렴한지 의문임 웹소켓 서버 보호 방법에 대한 질문이 있음 Cloudflare의 무료 플랜을 사용하면 지연이 발생함 무료 솔루션에 대한 궁금증이 있음 프로토콜이 왜 ack가 필요한지 궁금함 TLS로 감싼 웹소켓이 메시지의 무결성을 보장할 수 있음 FEN은 보드 상태만 인코딩하며, 게임 상태는 포함하지 않음 Scala로 작성된 scalachess 프로젝트는 성공적으로 유지되고 있음
Hacker News 의견
체스.com의 시간 구조에 대한 불만이 있음. 서버가 시간을 추적하는 것 같아 전송 시간과 지연을 무시하는 것 같음. 모바일 클라이언트에서 시간 제한 게임을 할 때 특히 불편함
Lichess는 StackOverflow 접근 방식을 선택했으며, 강력한 서버를 사용함
서버 측에서 움직임을 계산하는 것은 일관성을 보장하고, 제한된 처리 능력이나 에너지를 가진 클라이언트의 성능을 최적화함
Redis pub/sub 채널에서 메시지 손실을 어떻게 처리하는지 설명이 부족함
"l" 매개변수는 서버에서 관찰된 지연을 나타내는 것일 수 있음
서버가 모든 합법적인 다음 움직임을 열거하고 전송하는 것이 놀라움
웹소켓 서버 보호 방법에 대한 질문이 있음
프로토콜이 왜 ack가 필요한지 궁금함
FEN은 보드 상태만 인코딩하며, 게임 상태는 포함하지 않음