Я проходил через RPC шаблон rabbitmq.У меня есть несколько вопросов по этому поводу.https://www.rabbitmq.com/tutorials/tutorial-six-go.html
- Шаблон RPC является синхронным или асинхронным.При первом прочтении это выглядит синхронно, потому что клиент должен ждать ответа.Клиент будет ждать ответа в очереди reply_to, чтобы он мог выполнять другие задачи в это время?
Мой сценарий состоит в том, что у меня есть две службы A и B. Служба A - это служба отдыха, котораяполучает несколько звонков в режиме реального времени через http.Служба A будет клиентом, а служба B будет сервером для сценария использования rabbitmq.Служба A отправит сообщение в очередь, а Служба B прочитает сообщение из очереди.Когда служба A отправит сообщение в очередь, ей придется ждать ответа в очереди reply_to.В течение этого времени, если Служба A получит еще один запрос, возможно, что Служба A отправит этот запрос в rabbitmq.
Как справиться со злонамеренным вводом данных?Скажем, если одно сообщение является вредоносным и из-за этого одно из серверов получило сбой.Теперь, потому что rabbit-mq не получил никакого подтверждения, поэтому он отправит это сообщение на другой сервер.Снова этот запрос будет сбой на этом сервере и будет присутствовать в очереди в течение длительного времени.Как выявлять такие случаи и удалять злонамеренный ввод из очереди?
Буду благодарен, если кто-нибудь сможет ответить на вышеуказанные запросы.