Обновление WSO2 SP с DAS

Я пытаюсь перейти с WSO2 DAS на SP; который включает переписывание определения потока событий с помощью сценария Siddhi SQL.

моя цель состоит в том, чтобы все изменения были ограничены в скрипте Siddhi SQL (таким образом, в SP).

Я использую DAS как простой «брокер сообщений» в контексте микросервиса.

как показано на схеме:

введите здесь описание изображения

есть три (3) микросервиса: A, B, C; служба A вызывает службу B и C.

служба A выдает "wso2event" с агентом данных wso2;

событие получено получателем (type="wso2event") в DAS;

два (2) издателя (eventAdapterType="soap") использовались для формирования двух сообщений SOAP и публикации соответственно для службы B и C.

ниже приведены мои определения артефактов:

ручей:

{
  "name": "ip3c",
  "version": "1.0.0",
  "nickName": "ip3c.receiverservice.senderservice.follow",
  "description": "follow event from receiver to sender and userevent",
  "metaData": [
    {
      "name": "sender",
      "type": "STRING"
    }
  ],
  "correlationData": [
    {
      "name": "host",
      "type": "STRING"
    }
  ],
  "payloadData": [
    {
      "name": "message",
      "type": "STRING"
    }
  ]
}

получатель:

<?xml version="1.0" encoding="UTF-8"?>
<!-- gbb2.receiverservice.follow -->
<eventReceiver name="gbb2" statistics="disable"
               trace="disable" xmlns="http://wso2.org/carbon/eventreceiver">
    <from eventAdapterType="wso2event">
        <property name="receiving.events.duplicated.in.cluster">false</property>
    </from>
    <mapping customMapping="disable" type="wso2event"/>
    <to streamName="ip3c" version="1.0.0"/>
</eventReceiver>

издатель 1:

<?xml version="1.0" encoding="UTF-8"?>
<!-- pnbu.senderservice.follow -->
<eventPublisher name="pnbu" statistics="disable"
                trace="disable" xmlns="http://wso2.org/carbon/eventpublisher">
    <from streamName="ip3c" version="1.0.0"/>
    <mapping customMapping="enable" type="xml">
        <inline>
            <sen:follow  xmlns:sen="http://gubnoi.com/SenderService/">
                <sender>{{meta_sender}}</sender>
                <host>{{correlation_host}}</host>
                <message>{{message}}</message>
            </sen:follow>
        </inline>
    </mapping>   
    <to eventAdapterType="soap">
        <property name="soapHeaders">SOAPAction: http://gubnoi.com/SenderService/follow</property>
        <property name="url">http://sender.gubnoi.com:10102/services/SenderService/</property>
    </to>
</eventPublisher>

издатель 2:

<?xml version="1.0" encoding="UTF-8"?>
<!-- tvzh.userevent.receiverfollow -->
<eventPublisher name="tvzh" statistics="disable"
                trace="disable" xmlns="http://wso2.org/carbon/eventpublisher">
    <from streamName="ip3c" version="1.0.0"/>
    <mapping customMapping="enable" type="xml">
        <inline>
            <use:save xmlns:use="http://gubnoi.com/UserEvents/">
                <title>u5khurw3</title>
                <obj>{{meta_sender}}</obj>
                <host>{{correlation_host}}</host>
                <bucket>{{message}}</bucket>
            </use:save>
        </inline>
    </mapping>   
    <to eventAdapterType="soap">
        <property name="soapHeaders">SOAPAction: http://gubnoi.com/UserEvents/save</property>
        <property name="url">http://userevents.gubnoi.com:10304/services/UserEvents/</property>
    </to>
</eventPublisher>

Я искал вокруг и не мог найти никаких полезных примеров.

Может ли кто-нибудь помочь

Благодарность


person George Wang    schedule 20.06.2018    source источник


Ответы (1)