На мой взгляд у вас RabbitMQ является самым узким местом, мало того, что он сам по себе медленный, так он у вас ещё и избыточно перегружен. Необходимо максимально избавиться от него.
Для выполнения
удалённых процедур уже давно придуман RPC или более продвинутый его аналог GRPC, который гоняет данные в бинарном формате, что сокращает размеры запросов и увеличивает скорость передачи, что так же может пригодиться вам для реализации
запроса за данными. Думается если вы первые два пункта уберёте,
кролику станет значительно легче и возможно на этом можно будет остановиться, если нет, то возможно стоит отказаться от него в пользу
Nats, посмотрите, он может вас сильно порадовать производительностью. Ну или можно посмотреть в сторону Redis, он так же превосходит
кролика в реализации очередей и на мой взгляд отлично подходит для реализации событийно-ориентированной архитектуры.