Асинхронное возвращение на Северное сообщение клиенту - PullRequest
0 голосов
/ 03 мая 2018

У меня есть ряд клиентов, которые отправляют объекты на сервер1 с помощью запросов Post, которые, в свою очередь, отправляются на сервер2 с использованием сокетов.

Сервер1 Обрабатывает сообщение клиента после запроса, преобразуется в сообщение сервера. SeverMessage отправляется асинхронно. он постоянно прослушивает ответные сообщения, которые могут поступать в любом порядке, но будет иметь свой идентификатор для их идентификации.

Как отправить ответ обратно в исходную ветку после того, как Сервер1 обработал правильный Идентификатор сообщения

1 Ответ

0 голосов
/ 03 мая 2018

Если я правильно понял вашу архитектуру, у вас есть шлюз или что-то вроде сервисного локатора между вашим клиентом и вашим поставщиком бизнес-услуг, а также связь между этими двумя серверами является асинхронной. Итак, вы хотите отправить обработанный запрос от поставщика бизнес-услуг на промежуточный сервер. Если это ваша архитектура, я могу порекомендовать два решения:
1. Держите государство в бизнес-провайдере : храните результат любого запроса в каком-то безопасном месте (БД или память на основе вашего бизнеса) у поставщика бизнес-услуг и внедряйте сервис для приема messageId и отправки результата, затем с учетом значимого периода времени в вашем сервисном брокере (server1) вы можете запросить результат
2. Выполните полнодуплексную связь: Вы также можете предоставить конечную точку службы на сервере server1, и после завершения любого процесса на сервере server2 он может отправить результат для сервера server1 через конечную точку

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