그것의에 대한 최신 저거넛 보석 (https://github.com/maccman/juggernaut)저거넛 보석
나는의 말을하자, 대한 건축 생각하고, '도트 게임'. 이 메타 게임은 매우 간단합니다 : 로그인 한 각 사용자 (Juggernaut와 관련하여 채널 구독)는 JS 캔버스의 임의의 색상 점입니다. 사용자는 자신의 점을 어떤 방향 으로든 움직일 수 있습니다. 그게 전부 야.
저거넛은 연결된 클라이언트의 모든 데이터를 전송하고 푸시해야합니다. 예를 들어, 레일,
1) 클라이언트 (들) AJAX 같은 도트와 플레이어의 ID ([1, [10299])의 좌표를 가압 :
현재 나뿐만 아키텍처 immagine.2) 레일은 저거 너트 푸시는이 채널을 듣고 모든 클라이언트에 다시 좌표)
3 저거넛
이 데이터를 푸시합니다.Juggernaut.publish("coordinates_channel", [1, [10,299]])
문제 : 내가 픽셀 단위로하는 JS 캔버스에 '점'객체의 움직임을 필요로 할 때
1), 난 너무 많은 AJAX 요청을 전송해야합니다. 예를 들어, 내 점이 초당 20 픽셀을 움직이면 초당 20 회의 요청을 보내야합니다. 용납 될 수없는.
2) Juggernaut.publish를 비동기 루프 (예 : EventMachine 사용)로 랩핑해야합니까? 왜냐하면 1000 명의 클라이언트 (점 1000 개, 업데이트 된 좌표가있는 데이터의 일정한 흐름)를 옮겨 놓기 때문입니다 ...
혹시 저거 너트 보석을 사용하여 잘못된 클라이언트 서버를 얻었습니까? 이 구현에 대해 어떻게 생각하십니까?
감사합니다.
감사 개선에 일부 리소스를합니다. 링크가 정말 흥미 롭습니다. 몇 년 전에 Quake3에 관해서 똑같은 것을 읽었습니다. –