Связь микросервисов с несколькими микросервисами - PullRequest
1 голос
/ 05 мая 2020

Новичок в микросервисах, пытаюсь наладить это дело, я знаю, что это будет большая проблема, но, пожалуйста, потерпите меня. Так может ли кто-нибудь подсказать мне лучший подход к:

  • Как взаимодействовать / общаться с несколькими микросервисами (5 в моем случае) из метода класса обслуживания другого микросервиса.

  • Что делать, если одна из этих микросервисов не работает?

  • Как в этом случае работает Управление транзакциями?

  • и, наконец, как объединить все эти ответы и отправить обратно как один ResponseEntity<APIResponse>

Спасибо, что добрались до этого для чтения, пожалуйста, помогите мне в этом.

Спасибо ...

1 Ответ

1 голос
/ 05 мая 2020

Это очень большой вопрос. На ответы можно написать не одну книгу. Я постараюсь перечислить кое-что в своей идее, чтобы вы поняли это.

  • Связь между микросервисами.
    • Syn c способов. Через HTTP-запросы, методы RP C или SOAP.
    • Асин c способов. Источник событий, например Kafka, RabbitMQ. Совместное использование базы данных.
  • Что делать, если одна из этих микросервисов не работает, что делать?
    • Так вы справляетесь со своей доступностью, в большинстве время, когда все микросервисы будут иметь более одного экземпляра.
    • На основе нескольких экземпляров вы можете реализовать некоторые стратегии, которые помогут вам контролировать бедствия, такие как прерыватель цепи, повторная попытка, дросселирование.
  • Как работает управление транзакциями работают в этом случае?
    • Вы можете попробовать фреймворк распределенных транзакций, но они часто кажутся слишком сложными.
    • Наиболее распространенной практикой при проектировании распределенных систем является CAP и конечная согласованность. проверьте вики
  • , как объединить все эти ответы и отправить их как один
    • Это на самом деле зависит от того, как вы разрабатываете свой API, вы можете всегда используйте методы API Gateway, обрабатывайте все свои c logi в FE в одной службе.

Выше очень мало о вопросе, вы можете прочитать какую-нибудь книгу или подробное решение Google в Интернете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...