Komunikacja zorientowana na usługi
komunikacji zorientowanej na usługi ( SOC ) są zaprojektowane tak, aby można je było łatwo stosować w kontekście architektur zorientowanych na usługi . Technologie te są na ogół oparte na oprogramowaniu i bardziej przypominają aplikacje biznesowe niż tradycyjny system komunikacji biznesowej PBX . Systemy komunikacji zorientowanej na usługi umożliwiają swoim usługom udział w procesach biznesowych . Udostępniają swoje usługi innym aplikacjom biznesowym w ramach SOA i umożliwiają ponowne wykorzystanie usług. Celem komunikacji zorientowanej na usługi jest umożliwienie środowiskom biznesowym wbudowania komunikacji w ich procesy biznesowe, umożliwiając bardziej usprawnioną współpracę między ludźmi w firmie. Zwykle zakłada się, że pewne usługi są świadczone w kontekście dostawcy usług SOA. Często ma to postać pakietu usług sieciowych , ale może być również dołączone do innych środków udostępniania usług, takich jak magistrala systemowa przedsiębiorstwa (ESB).
Część komunikacyjna komunikacji SOC Enterprise była tradycyjnie zapewniana przez zamknięte, autonomiczne systemy PBX. Zainstalowane w oddzielnym pokoju telefonicznym lub w szafie z okablowaniem, obsługiwane przez inną infrastrukturę okablowania, znaną tylko kierownikowi ds. telekomunikacji, systemy te działały niezależnie od każdego innego aspektu działalności.
Dzisiejsi dyrektorzy ds. informatyki (CIO) obeznani z biznesem badają sposoby lepszego wykorzystania technologii informacyjnej w celu poprawy wydajności i produktywności przedsiębiorstwa. W praktyce CIO przyjmują koncepcje architektur zorientowanych na usługi oraz ponowne przemyślenie, w jaki sposób można zaprojektować różne systemy biznesowe używane w przedsiębiorstwie, aby umożliwić każdemu systemowi czerpanie korzyści z dowolnego innego systemu. Dojrzewanie technologii usług sieciowych stworzyło rzeczywiste ramy pozwalające jednemu systemowi na wykorzystanie usług innego zgodnie z zasadami architektury zorientowanej na usługi. Złożone systemy biznesowe mogą teraz współpracować, aby dostarczać użytkownikom końcowym rozwiązania w wysoce spersonalizowany sposób. Coraz częściej aplikacje dostosowują się do konkretnych potrzeb użytkowników, zamiast zmuszać użytkowników do dostosowywania się do dostępnych funkcji aplikacji.
Technologia usług internetowych
W miarę jak Internet przekształcił się z forum wymiany informacji w rynek biznesowy, dojrzała technologia, która umożliwiła komputerom łatwiejsze przeprowadzanie transakcji między sobą. Z tych korzeni internetowych narodziła się technologia usług sieciowych.
Ogólnym celem usług sieciowych jest konstruowanie elementów logiki biznesowej , usług, które mogą być bardzo łatwo wykorzystane przez inne aplikacje. Same usługi ukrywają przed konsumentami złożoność swojej logiki biznesowej za pomocą prostych interfejsów, które umożliwiają ponowne wykorzystanie usług w wielu różnych aplikacjach. Usługa i konsument są opisywane jako luźno powiązane , podejście, które umożliwia opracowywanie złożonych rozwiązań złożonych poprzez wykorzystanie wielu usług internetowych.
Technologia usług sieciowych składa się z kilku kluczowych elementów…
- XML ( eXtensible Markup Language ) to podstawowy język technologii usług sieciowych. Zapewnia neutralny dla platformy sposób opisywania danych związanych z dowolną transakcją usługi.
- SOAP ( Simple Object Access Protocol ) to preferowany sposób, za pomocą którego aplikacja wywołuje usługę sieciową. Sam protokół jest napisany w XML.
- WSDL ( Web Services Description Language ) to specyfikacja interfejsu udostępnianego konsumentom przez usługę sieciową. Opisuje zestaw operacji, które udostępnia usługa. WSDL jest również napisany w XML.
Zalety usług internetowych
- Luźne powiązania — wysoki stopień abstrakcji, jaki istnieje między implementacją a konsumpcją usługi, uwalnia klienta usługi sieciowej i dostawcę usług sieciowych od konieczności wzajemnej wiedzy poza danymi wejściowymi i wyjściowymi
- Neutralność platformy — usługi sieciowe mogą być świadczone lub wywoływane na większości obecnych platform, nawet na starszych platformach, jeśli nie na wszystkich
- Neutralny język programowania — ludzie opracowują usługi internetowe przy użyciu C/C++, C#, Java, Visual Basic , Python i innych
- Standardy są neutralne pod względem architektury — nie narzucają modelu klient-serwer , peer-to-peer ani żadnego innego, chociaż praktyczne problemy z implementacją skłaniają obecnie programistów do korzystania z modelu klient-serwer
- Usługi sieciowe wykorzystują istniejące standardy — standardy, które są już stosowane w przypadku konwencjonalnych aplikacji serwerów sieciowych , w tym HTTP, bezpieczne gniazda i uwierzytelnianie
- Stosunkowo lekki — dzięki czemu można je łatwo zainstalować na małych urządzeniach, takich jak PDA i smartfony .