0
A
답변
1
여기에 가장 좋은 대답은 없습니다. 두 옵션 모두 장단점이 있습니다.
tcp 이벤트 버스 브리지를 사용하면 여러 시스템간에 가장 빠른 통합을 제공 할 수 있지만 단일 실패 지점을 도입하는 단점이 있습니다. 브리지를 실행하는 노드가 충돌하거나 네트워크가 끊어지면 격리 될 것이라고 가정합니다.
양자 택일로 (그리고 조금 더 복잡함) 궤도를 기반으로 클러스터 관리자를 구현하는 것입니다. 하나는 인터페이스 ClusterManager을보고 시작해야 거기에서 궤도 구현을 제공합니다. 런타임시 전체 클러스터 관리자가 SPI이므로 (vertx 측면에서) 구현 jar을 바꿀 수 있으며 코드를 변경하지 않아도됩니다. 자세한 내용은 here을 참조하십시오. 단점은 달성하기가 더 복잡 할 것이지만 더 잘 통합 될 것이라는 점입니다.
사용 사례는 무엇입니까? Vertex와 통합하려는 기존 궤도 코드베이스가 있습니까? –
기존 궤도 코드베이스가 없습니다. 많은 장치가 vert.x에 연결되며 각 장치에는 자체 verticle (및 state)이 있습니다. 이러한 장치는 항상 실행되는 것은 아니지만 일부 백그라운드 서비스를 구독합니다. 따라서 가상 액터 패턴은 라이프 사이클 및 액터 분배를 관리하는 대신 제 시나리오에 더 적합하다고 생각합니다. Verticle to Orbit 가상 배우 구독은 내가 적절한 방법으로 달성해야하는 것입니다. verticle에서 Orbit 클라이언트를 사용하면 vert.x 스레드를 차단할 수 있습니다. 나는이 기술 스택에 전문가가 아니지만 학습에 많은 관심이 있습니다. 어떤 도움을 주셔서 감사합니다. –
그러나 Vertx Hazelcast 클러스터를 사용할 수 있습니다. EventBus를 통해 작업자 verticle (백그라운드 서비스)로 메시지를 보냅니다. –