Каков наилучший способ связи между микросервисами в vertx, веб-клиентом или каким-либо промежуточным ПО?
Я мало что сделал в микросервисах vert.x, но столкнулся с сомнением в том, что знаю лучший способ взаимодействия друг с другом miscroservices vert.x, используя какое-то промежуточное ПО или веб-клиент, я не знаю, или любой другой способ, которым vert.x позволяет мне.
1 ответ
Существует бесконечное количество возможностей, позволяющих микросервисам vert.x взаимодействовать между собой, каждый из которых имеет свои плюсы и минусы и имеет более или менее актуальную зависимость в зависимости от контекста.
Вот 3 распространенных способа:
1) Использование родного vert.x eventBus (асинхронная логика): https://vertx.io/docs/vertx-core/java/
2) Использование системы брокера сообщений, такой как Apache Kafka (иногда вам нужны постоянные очереди сообщений с механизмами воспроизведения, которые, на мой взгляд, более мощные, чем шина событий vert.x, иногда вам нужно общаться на нескольких языках, написанных на микро-сервисах, и на vert.x). шина событий не имеет к этому никакого отношения) или устаревшая JMS-совместимая система, такая как ActiveMQ, RabbitMQ & cie.
3) Иногда более важно выставить простой API Restfull, поэтому вы можете использовать vertx-web
расширение для этого: https://vertx.io/docs/vertx-web/java/