Platforma porozumienia

EntireX to serwer integracyjny łączący różne platformy, aplikacje, systemy bazodanowe itp.

EntireX to serwer integracyjny łączący różne platformy, aplikacje, systemy bazodanowe itp.

Serwer opracowany przez Software AG działa na większości platform - od mainframe OS/390, przez serwery klasy średniej AS/400 czy OpenVMS, po Windows i systemy unixowe. Składa się z dwóch komponentów - Communicator i Orchestrator.

Communicator ma zapewnić transmisję pomiędzy różnymi systemami. Jest brokerem komunikacyjnym, który obsługuje zarówno mechanizmy zdalnego wywołania procedur (RPC, SOAP), jak i bardziej zaawansowane mechanizmy: DCOM, CORBA, pakiety MQSeries. Obsługuje także połączenia synchroniczne, co ułatwia wykorzystanie go jako dodatkowej biblioteki we własnym programie. Pozwala na stworzenie aplikacji, która te same dane będzie przekazywała do serwera aplikacyjnego, komponetu COM czy usługi Web. Komunikacja odbywa się na zasadzie przekazywania komunikatów, bez przesłania kontekstu transakcji.

Aby przekształcić przekazywane informacje, należy skorzystać z drugiego składnika serwera integracyjnego - Orchestratora. Integruje on dane i aplikacje, tłumacząc je zgodnie z wymaganiami docelowego systemu. Programista rysuje schemat routingu i przy użyciu wygodnego inter-fejsu graficznego określa zasady translacji komunikatów. Pakiet pracuje głównie z dokumentami XML. Inne dane są przekształcane do struktury drzewiastej i przetwarzane analogicznie, jak XML.

Programowanie w module Orchestrator sprowadza się do określenia zasad odwzorowania pól dokumentu wejściowego i wyjściowego, określania ciągu filtrów, zdefiniowania licznych dodatkowych funkcji translacyjnych. Możliwe jest odwzorowanie komunikatów w relacji "wiele do wielu", gdy np. z m komunikatów wejściowych ma powstać n wyjściowych.

Do śledzenia komunikacji służy wygodne narzędzie diagnostyczne, za pomocą którego administrator może określić np. wąskie gardło systemu. Orchestrator rejestruje błędne komunikaty i pozwala na ich "ręczne" przekształcenie.

W obecnej wersji EntireX, dokument XML może być zdefiniowany przy użyciu DTD; kolejna ma zawierać wsparcie dla W3C Schema. Na platformie EntireX można instalować usługi Web (pakiet obsługuje SOAP i WSDL). Pełnią one rolę pośrednika pomiędzy modułami Communicatora a Orchestratora, a ich głównym zadaniem jest zapewnienie dodatkowych metod komunikacji między tymi dwoma modułami. EntireX Orchestrator tłumaczy wywołania do różnych usług Web. Na przykład można stworzyć ogólny mechanizm, który z jednej strony będzie komunikował się z różnymi systemami logistycznymi firm transportowych, z drugiej, będzie udostępniał jeden, spójny interfejs pozwalający wybrać najtańszy transport.

W EntireX ciekawie rozwiązano problem autoryzacji. System autoryzuje użytkownika (właściwie przesyłany przez niego pakiet) tylko raz - w momencie wejścia do systemu. Dalsze logowanie odbywa się automatycznie, bez względu na to, czy dane przesyłane są DCOM-em dla Windows czy następuje wywołanie RPC odnoszące się do mainframe. System potrafi zidentyfikować nadawcę pakietu na każdej platformie. EntireX pozwala na centralne synchronizowanie hasła między systemami.

Rola integracji

Kiedy warto stosować rozwiązania takie jak EntireX? W przypadku integracji kilku prostych aplikacji zapewne szybciej będzie napisać interfejsy łączące systemy metodą "każdy z każdym". Z pewnością będzie to rozwiązanie tańsze. Centralny system wymiany danych z czasem okaże się przydatny w każdym przedsiębiorstwie.

Warto zwrócić uwagę, że XML - wbrew temu co się często pisze - nie jest panaceum na wszelkie problemy związane z integracją. Ułatwia ją, ale nie automatyzuje. Dopóki nie powstaną standardowe formaty zapisu podstawowych informacji biznesowych (jak chociażby adresów), dopóty komercyjne rozwiązania typu EntireX, BizTalk, BPI Sybase czy DirXML Novella będą odgrywały kluczową rolę w komunikacji w obrębie przedsiębiorstw.