2012-03-25 4 views
0

나는 클라이언트, 로비 서버 및 게임 서버를 갖을 턴 기반 카드 게임을 만들고있다. 교차 언어 및 양방향 (예 : 클라이언트 요청 -> 서버 서버 응답 -> 클라이언트 및 서버 요청 -> 클라이언트 클라이언트 응답 -> 서버)의 메트로 데이터는 무엇입니까?크로스 - 언어 양방향 클라이언트 - 서버 통신 방법론?

JMS를 살펴 보았지만 내 요구에 너무 무거울 것이라고 생각합니다 (이 프로그램은 규모가 작을 뿐이며 복잡성으로 인해이 솔루션이 적합하지 않다고 생각합니다). 간단히 REST를 살펴 봤지만 양방향 요구 사항에 맞지 않는다고 생각합니다. 물론 RMI가 있지만 C + + 및 다른 언어로 클라이언트를 개발할 수 있기를 원합니다.

솔직히 말해서 JMS를 사용하고 싶지 않기 때문에 약간의 손실이 있습니다. 너무 복잡하기 때문에 생각하지만 TCP 소켓을 사용하지 말고 메시지에 대한 기본 XML 기반 프로토콜은 프로그램에 대한 좋은 통신 구조를 제공합니다.

답변

2

내가 연구를 수행하는 연구소는 "객체 지향 분산 시맨틱 서비스"라는 시스템을 개발합니다.

우리는 서로 다른 언어로 클라이언트/서버를 작성할 수 있도록 교차 언어 직렬화에서 수행하는 작업을 활용하고 구현 메시지에 관계없이 클라이언트/서버가 직렬화 및 역 직렬화 할 수있는 형식이되도록 기본 메시지를 작성합니다 .

지금 우리는 대부분 Java/ObjectiveC를 지원합니다. 대화방 자습서를 살펴보면 요청/응답이 어떻게 작동하는지에 대한 기본적인 아이디어를 얻을 수 있습니다.

http://ecologylab.net/research/simplGuide/oodss/index.html

OODSS는 ... 시스템이 원래 우리의 실험실에서 연구자 중 하나가 작업 한 게임을 지원하기 위해 작성되었습니다 게임 시나리오에 사용할 수 있도록 설계되어있다. OODSS의 원문은 처음부터 게임 개발에 대해 논의합니다. 그게 당신을 위해 잘 작동 할 수 있습니다 : http://ecologylab.net/technicalReports/oodss_TR_10_01.pdf

비슷한 생각을 적용하여 아직 지원되지 않는 언어로 된 여러 클라이언트를 허용 할 수 있습니다. (시작하려면 직렬화/직렬화 코드를 직접 작성해야 할 수도 있습니다.)

행운을 빈다! 희망이 도움이됩니다!