2014-02-13 3 views
-5

게임에 대해 Java 언어를 사용하여 서버를 개발하려고합니다.응용 프로그램 간의 통신 유형

게임은 C#로 작성되어 있으며 sockets을 통해 통신 할 예정입니다.

제가 생각해 낼 수있는 유일한 방법은 JSON입니다.

이 작업을 수행하는 적절한 방법은 무엇입니까?

+0

귀하의 질문은 그다지 구체적이지 않습니다. 어떤 종류의 의사 소통? 온라인 게임과 같은 지속적인 연결? 또는 가끔 연결 (예 : 점수 제출 등)을 위해 비 영구 연결이 필요합니까? – Tseng

답변

1

적절한 방법은 서버에 RESTful 또는 SOAP 기반 웹 서비스를 설치하고
쪽을 호출하고 클라이언트가 호출하는 것입니다. 이것은 또한 최저 수준의 소켓을 통과합니다.

원하는 경우 직접 소켓 기반 통신을 구현할 수 있습니다 (REST/SOAP 없음)
하지만 작업이 더 어렵고 오류가 발생하기 쉽기 때문에 권장하지 않습니다.
그러나 다른 한편으로는, 이것을 잘 구현하면 더 효율적일 수 있습니다.

많은 옵션이 있으므로 정확한 요구 사항/요구 사항에 따라 다릅니다.

+0

실제로 "문제 방식". – Kayaman

+0

:) 적절한 감사. –

0

응용 프로그램을 올바르게 통신하려면 모든 작업자 스레드가 열린 소켓을 폴링하고 요청을 처리해야하는 다중 스레드 서버에 대해 생각해 보는 것이 좋습니다.이 모든 것을 낮은 수준으로 작성해야합니다 수준 I/O 및 멀티 스레딩 API

할 수는 있지만 응용 프로그램 서버 (예 : Tomcat 서버 또는 유사한 서버)에 통신을 남겨 두는 것이 좋습니다. 여기서 자바 서버를 REST 또는 SOAP 기반 웹 서비스를 구현하는 웹 애플리케이션으로 전개 할 수있다.

이 방법을 사용하면 통신 업무를 수행하는 생산력이 뛰어난 서버로 보호받을 수 있으며 C#에서 표준 웹 서비스 클라이언트 작성에 집중할 수 있습니다 (C#에서는 거의 도움이되지 않을 수도 있습니다. 하지만 여기있는 누군가가 당신을 도울 수있어서 기쁩니다.)

0

앱 간 통신을위한 편리한 API/라이브러리를 찾고 있다면 zeroMQ을 고려해 볼 수 있습니다.

웹 서버 클라이언트 모델의 경우. HTTP REST/SOAP 인터페이스를 구현하는 것이 좋습니다.

관련 문제