Гость
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Решение по обмену данными / 6 сообщений из 6, страница 1 из 1
15.07.2016, 11:24
    #39274421
wewewew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Решение по обмену данными
Коллеги, проектирую решение по информационному обмену между двумя сервисами (SOAP).

Имеем SOAP сервис по управлению некой сущностью, назовем его "Фаты обращений". Оператор через WEB-форму их регистрирует, вызывается сервис, он проводит ФЛК и сохраняет данные в СУБД. Проводится это все в течении дня при равномерной загрузке.

Задача: Как можно быстрее после успешной регистрации в сервисе «Управления фатами обращений» передать эти факты в другой SOAP сервис для дальнейшего использования. После отправки фактов в другой сервис, мастер данные в сервисе «Управления фатами обращений» лочаться на дальнейшего редактирования, становятся ридонли.

Понимаю, что задача достаточно стандартная, прошу паттерн решения по регламенту обмена и архитектурное решение в части приложений (возможные очереди сообщений, демоны и т.п).
...
Рейтинг: 0 / 0
15.07.2016, 11:45
    #39274447
fixxer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Решение по обмену данными
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
[soap service 1       ] ==<CreateFactCommand>==> [Messaging Middleware (Kafka/RabbitMq/JMS/etc)] ==<CreateFactCommand>==> [«Управления фатами обращений»]
                                                 [                                             ]                          [                             ]
[integration service  ] <==<FactCreatedEvent>=== [                                             ] <==<FactCreatedEvent>=== [   Store to DB               ]
[                     ]                          [                                             ]                          [                             ]
[                     ] ===<Ack>==>              [                                             ] ==-<Ack>==>              [   Lock data                 ]

         |
         v

[soap service 2]
...
Рейтинг: 0 / 0
15.07.2016, 11:54
    #39274464
fixxer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Решение по обмену данными
Итого:

1. Заводите брокер, желательно легковенсный и распределенный.
2. Отрываете SOAP интерфейс от основной программы и уносите в микросервис, который только принимает соап и кладет в брокер.
3. Основной сервис слушает команды от брокера, делает свое дело и пишет в брокер события по результату.
4. Интеграционный микросервис слушает события и дергает второй SOAP, после чего уведомляет через брокер основной сервис, что данные ушли.
...
Рейтинг: 0 / 0
15.07.2016, 12:52
    #39274555
wewewew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Решение по обмену данными
fixxerИтого:

1. Заводите брокер, желательно легковенсный и распределенный.
2. Отрываете SOAP интерфейс от основной программы и уносите в микросервис, который только принимает соап и кладет в брокер.
3. Основной сервис слушает команды от брокера, делает свое дело и пишет в брокер события по результату.
4. Интеграционный микросервис слушает события и дергает второй SOAP, после чего уведомляет через брокер основной сервис, что данные ушли.
Спасибо большое!

Можете пояснить по пунктам:
п.1 - Что имеется ввиду под лековесный и распределенный.
п3. - по средствам чего происходит "прослушка" брокера основным сервисом?
п.4 - тоже само про прослушку.
...
Рейтинг: 0 / 0
15.07.2016, 14:06
    #39274660
fixxer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Решение по обмену данными
wewewewМожете пояснить по пунктам:
п.1 - Что имеется ввиду под лековесный и распределенный.
п3. - по средствам чего происходит "прослушка" брокера основным сервисом?
п.4 - тоже само про прослушку.

1 - Значит простой в установке и конфигурации, с малым футпринтом, из коробки поддерживающий кластерную конфигурацию для отказоустойчивости и масштабирования.
3,4 - у каждого брокера есть клиентская библиотека, посредством нее вы "подписываетесь" на сообщения брокера и получаете их в свою колбек функцию.
...
Рейтинг: 0 / 0
15.07.2016, 14:17
    #39274672
wewewew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Решение по обмену данными
fixxer,

Спасибо за пояснения и отличную схему взаимодействия!
...
Рейтинг: 0 / 0
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Решение по обмену данными / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]