簡體   English   中英

通過Web客戶端或某些中間件在vertx中的微服務之間進行通信的最佳方式是什么?

[英]What is the best way to communicate between microservices in vertx, by web client or some middleware?

我在vert.x微服務中沒有做太多事情,但是我遇到了一個疑問,即使用一些我不知道的中間件或Web客戶端或其他任何方式來相互了解錯誤服務vert.x的最佳通信方式.x允許我。

允許vert.x微服務在它們之間進行通信的可能性是無限的,每種情況各有利弊,並取決於上下文。

這是3種常見方式:

1)使用本機vert.x eventBus(異步邏輯): https ://vertx.io/docs/vertx-core/java/#event_bus(並且您可以在需要時使用帶有-cluster選項的Hazelcast Cluster Manager處理不同JVM pid之間的通信: https ://vertx.io/docs/vertx-hazelcast/java/)。

2)使用像Apache Kafka這樣的消息代理系統(有時您需要具有重播機制的持久消息隊列,我認為它比vert.x的事件總線功能更強大,有時您需要與編寫微服務和vert.x的多種語言進行通信事件總線與此無關)或舊式的JMS兼容系統(例如ActiveMQ,RabbitMQ&cie)。

3)有時公開簡單的Restful api更相關,因此您可以使用vertx-web擴展來做到這一點: https : vertx-web

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM