Integrację systemów informatycznych możemy przeprowadzić na kilka sposobów. Każdy z tych sposobów ma swoje plusy i minusy. Czasami mamy to szczęście i możemy wybrać styl, a nasz wybór nie jest ograniczony przez środowisko w jakim przyjdzie działać naszej aplikacji. Innym razem styl zostanie wymuszony przez ograniczenia infrastruktury, brak elastyczności integrowanych systemów czy brak budżetu na przeprowadzenie integracji w inny, lepszy sposób. Każdy z tych stylów postaram się omówić osobno, bardziej szczegółowo w osobnych artykułach. Zapoznaj się z poniższą klasyfikacją i spróbuj zastanowić się, jakie korzyści oraz problemy wynikają z użycia każdego podejścia.
Wymiana pliku
Styl ten polega na przekazywaniu informacji poprzez pliki. Pliki mogą być wymieniane przez:
- lokalny system plików, jeśli integrowane systemy działają na tej samej maszynie
- FTP lub SFTP
- Network File system
- każdy inny sposób, w którym dwa systemy mogą zapisywać i odczytywać pliki z określonej lokalizacji
Integracja polega na tym, że jeden system generuje plik i udostępnia go w lokalizacji, z której drugi go odczytuje i importuje zawarte w nim dane.
Integracja poprzez bazę danych
Styl ten polega na podłączeniu wielu aplikacji do tej samej bazy danych. Każda aplikacja ma dostęp do tych samych danych. Może być to zarówno relacyjna baza danych, baza NoSQL lub każdy inny sposób permanentnego przechowywania informacji.
Zdalne wywołanie metod
W obecnych czasach chyba najpopularniejszy styl integracyjny. Systemy udostępniają API w postaci Web serwisów (w czasach bardziej odległych obowiązywał między innymi standard CORBA). Inne systemy stają się klientami tych web serwisów wywołując je, najczęściej (chociaż nie zawsze) poprzez protokół HTTP(S).
Messaging
Aplikacje wymieniają się informacjami zdefiniowanym jako wiadomości (messages) poprzez wspólne systemy kolejkowe (messaging systems). System kolejkowy jest osobnym systemem, pośrednikiem (middleware) nie realizującym żadnej logiki biznesowej, a jedynie dbającym aby wiadomość opublikowana przez jeden z systemów dotarła do drugiego systemu. Komunikacja przez systemy kolejkowe odbywa się w sposób asynchroniczny.