2014-03-03 1 views
0

사람들은 보통이 계층에서 작동 할 것입니다.하지만 이제는 PUB/SUB 다 대다 메시징 관계를 IPC 또는 TCP 인프라에 매핑해야하는이 계층에서 작업하고 있습니다. 주소 별 게시자 바인딩 나는 각각 자신의 단점이 생각할 수있는메시징 인프라가 PUB/SUB의 주제를 IPC/TCP 계층에 매핑하는 방법은 무엇입니까?

대안은 :

  1. 는 데몬과 경로 메시지를 추가. 이로 인해 단일 장애 지점과 메시징 중 추가 레이어가 추가됩니다.
  2. 레지스트리 추가 중. 단일 실패 지점을 추가하고 새로 시작한 프로세스에도 알릴 수 없습니다.
  3. 동일한 주제에 대해 여러 게시자를 허용하지 않습니다. 아키텍처 정렬에 유연성이 없습니다.
  4. 포트 범위와 IPC 주소 범위를 미리 정의하고 모든 프로세스는 정기적으로 연결을 다시 시도합니다. 서비스 검색에 지연을 추가하면 OS에서 모든 포트를 사용할 수 있어야합니다.

그렇다면 JMS, LBM과 같은 최신 메시징 소프트웨어 패키지는 어떻게합니까? 나는 Tibco RV와 Reuters가 접근법 1)을하고 있음을 압니다 - 어쨌든 나는 그런 데몬 프로세스를 피할 수 있습니까?

중요한 경우 자바를 사용하고 있습니다.

감사합니다.

+1

멀티 캐스트 UDP를 고려해 보셨습니까? 메시징 제공 업체의 예를 보려면 JGroups를 살펴보십시오. – SimonC

+0

@SimonC 첫 번째 우선 순위는 IPC 채널에서 작동하게하여 최고 성능을 얻을 수 있도록하는 것입니다. 나는 IPC가 나의 최선의 지식을 고려할 때 그러한 한계가 있다고 생각한다. 그래서 나는 그런 제약으로 해결책을 찾아야 만한다고 생각합니다. –

답변

1

각 기계에 로컬 데몬을 작성하여 jq를 로컬에서 실행 한 다음 지속성을 제공하여 req를 처리하려고합니다.

알려진 포트에 TCP 브로드 캐스트를 사용하여 주제 및 대기열 연결을 IP 주소 및 포트에 알립니다. 그런 다음 보급 된 포트에 직접 연결하여 트랜잭션의 메시지를 게시하거나 구독 할 수 있습니다.

+0

동의 함. 이 문제에 대한 모든 해결책은 실제로 없다. –