어떤 프로토콜을 사용해야 합 빠른 명령의/응답을까요?

StackOverflow https://stackoverflow.com/questions/1024403

  •  06-07-2019
  •  | 
  •  

문제

를 설정해야합니다 프로토콜에 대한 빠른 명령의/응답이 상호 작용합니다.내 본능은 나에게 말을 노크하고 함께 간단한 프로토콜 CRLF 로 구분된 ascii 문자열은 다음과 같은 방법 SMTP POP3 또는 작동,그리고 터널을 통해 그것 SSH/SSL 이 필요한 경우 그것을 안전하게 보호됩니다.

나는 이제까지,나에게서 기존 기술 그래서 사람들이 사용할 수 있는 친절한 라이브러리 보다는 오히려 소켓 인터페이스 라이브러리 OS 를 제공합니다.

요...

  • 명령하고 응답을 전달하는 구조화된 데이터를 주고 받고 있습니다.XML(S 식 걱정하지 않는다.)
  • 는 기능을 위한 서버를 만들 예정되지 않은 통하지 않고도 클라이언트는 폴링.

어떤 아이디어를 주세요?

도움이 되었습니까?

해결책

AMQP는 유망한 것 같습니다. 또는 XMPP는 약간의 오버 헤드로 원하는 대부분을 지원한다고 생각합니다.

즉, 달성하려는 것에 따라 간단한 임시 프로토콜이 더 쉬울 수 있습니다.

다른 팁

요청/답변 만 원한다면 HTTP는 매우 간단합니다. 이미 요청/응답 프로토콜입니다. 클라이언트와 서버 측은 대부분의 언어로 널리 구현됩니다. 그것을 확장하는 것은 잘 이해됩니다.

사용하는 가장 쉬운 방법은 게시물 요청으로 서버에 명령을 보내고 서버가 응답 본문에서 답장을 다시 보내는 것입니다. 당신은 또한 자신의 동사로 HTTP를 확장 할 수 있지만, 캐싱 프록시 및 HTTP를 이해하는 기타 인프라를 활용하는 데 더 많은 노력을 기울일 수 있습니다.

비동기 알림을 원한다면 PUB/하위 프로토콜 (Spread, XMPP, AMQP, JMS 구현 또는 TIBCORV, TIBCO EMS 또는 WEBSPHERE MQ와 같은 상용 PUB/하위 메시지 중개인)을보십시오. 선택할 프로토콜 또는 구현은 구축하는 시스템의 신뢰성, 대기 시간 및 처리량 요구에 따라 다릅니다. 예를 들어, 네트워크가 정체 될 때 알림을 삭제해도 괜찮습니까? 클라이언트가 오프라인 상태 일 때 알림이 발생하는 것-클라이언트가 다시 연결될 때 폐기되거나 대기해야합니까?

SNMP와 같은 것은 어떻습니까? 앱이 사용하는 모델에 정확히 맞는지 확실하지 않지만 Async Notify 및 Pull (즉, 트랩 및 get)을 모두 지원합니다.

그것은 좋은 질문의 거대한 숫자로 변수를 고려하고,질문만을 언급 몇 가지 그들:패킷의 형식으로 비동기 대동기화된 메시지와 보안.많은,많은 사람들이 하나 것에 대하여 생각할 수 있었습니다.나고야에 대한 설명을 통해의 7 개의 계층 프로토콜 스택(OSI/ISO)및 자신을 묻는 무엇이 필요에 해당 레이어와 당신은 당신의 작은 해당 레이어 또는 그것을 얻을 다른 곳에서.(당신은 주로 보인에 관심층 6 7 이지만,또한 언급된 비트의 낮은 층이 있습니다.)

또한 생각하는지 여부에 대해 이에서는 안전이 중요한 응용 프로그램이나 시스템의 일부로 공식 V&V진짜로 좋은,신뢰할 수 있는 통신 시스템은 쉽지 않을 디자인또한"부족한"프로토콜할 수 있는 많이 넣어 코딩에 대한 부담을 할 수있는 응용 프로그램 오류 복구합니다.

마지막으로,내가 찾고있는 방법에는 다른 응용 프로그램과 비슷한 작업을 수행(체크 오픈 소스,책을 읽고,etc.) 또한 유용한은 미국특허청이 데이터베이스,etc.;을 얻을 수 있는 좋은 아이디어에서 설명을 읽고 통신의 문제들을 해결하기 위해 노력하고있다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top