наверное первое... вообще это моя первая реализация взаимодействия микросервисов будет. я вижу это так: инициатор шлет запрос брокеру, брокер из микросервисов выбирает те, которые могут это обработать(т.е. подписаны на эту процедурку) ну и дальше выбирает самый не занятый/рандомный. примерно как-то так
Я тут наблюдал, как в поддержку общей шине в рамках каждого сервиса появилась РСУБД.
Потому, что обработка некоторых событий многостадийная, и Стейт надо где-то хранить.
Пока производительность позволяет - делайте общую шину на РСУБД и не парьтесь. Делать ее на очередях - это привет какая сложная задача