Podstrony
|
[ Pobierz całość w formacie PDF ]
1999 Firma Sun opublikowała specyfikację J2EE (Java 2 Platform Enterprise Edition). Na platformie Java 2 zintegrowano technologie RMI z IIOP, co umożliwiło współdziałanie systemów na podstawie Javy oraz architektury CORBA. Specyfikacja Simple Object Access Protocol (SOAP) po raz pierwszy ujrzała światło dzienne. Narodziła się era usług sieciowych. Chociaż RPC i rozproszone obiekty to tradycyjne podejścia do konstrukcji systemów rozproszonych, nie są one oczywiście jedynymi. Inne, bardzo ważne podejście bazuje na przekazywaniu komuni- katów niosących dane lub dokumenty. Zamiast skupiać się na rozproszonych obliczeniach po- przez odpowiednie wywołanie zdalnych fragmentów kodu, w modelu przekazywania komunikatów przyjęto odmienne podejście: komunikujące się aplikacje wykonują niezależnie od siebie obliczenia i wymieniają się komunikatami zawierającymi tylko dane. Zostało to spopularyzowane przez inte- gratorów systemów, którzy próbowali doprowadzić do kooperacji między wysoce heterogenicznymi systemami. W większości systemy te były tak różne, że nie można było zrealizować wymagania precyzyjnej integracji za pomocą mechanizmu RPC. Zamiast tego osiągnięto sukces poprzez prze- syłanie samych danych pomiędzy systemami. Komercyjne znaczenie aplikacji opartych na prze- kazywaniu komunikatów niezmiennie wzrasta od momentu, gdy IBM w 1993 r opracował produkt MQSeries. Odpowiednikiem tego systemu z Microsoftu jest Microsoft Message Queuing Server (MSMQ). Specyfikacja J2EE definiuje zbiór interfejsów programistycznych zebranych pod nazwą Java Messaging Service (JMS). Nie została podjęta żadna próba zdefiniowana standardowego protokołu komunikacji między serwerami komunikatów. Jedną z podstawowych zalet technologii usług sieciowych jest to, że protokoły, na których bazuje, obsługują równie dobrze modele RPC oraz modele przekazywania komunikatów. W rozdziale 3. znaj- duje się podrozdział poświęcony temu właśnie zagadnieniu. h n n n Na wczesnym etapie ewolucji technologii usług sieciowych zauważyliśmy pewną prawi- dłowość. Występowała ona za każdym razem, gdy wykorzystywaliśmy usługi sieciowe w integracji aplikacji. Nazwaliśmy ten wzorzec architekturą zorientowaną na usługi Rozdział 1. Wprowadzenie do usług sieciowych 33 (SOA, Service Oriented Architecture). Jest to prosta koncepcja, którą można zastosować w wielu sytuacjach wykorzystania usług internetowych. Na rysunku 1.1 przedstawiono główne role oraz operacje wykonywane w architekturze SOA. . . Architektura zorientowana na usługi W architekturze zorientowanej na usługi można zawsze wyróżnić trzy role klienta usługi , dostawcę usługi oraz rejestr usług : Dostawca usługi odpowiada za przygotowanie opisu usługi , opublikowanie go w jednym rejestrze lub więcej oraz odbieranie komunikatów wywołujących usługę od jednego klienta lub większej liczby klientów. Dostawcą usługi może więc być dowolna firma, która udostępni usługę w sieci. Możesz traktować dostawcę usługi jako serwer w powiązaniu klient-serwer między klientem usługi a jej dostawcą. Zadaniem klienta usługi jest pobranie opisu usługi z rejestru i wykorzystanie go w celu nawiązania połączenia i wywołania usługi udostępnionej przez dostawcę. Każdy, kto wykorzystuje funkcjonalność usługi sieciowej może być uważany za klienta tej usługi. Klienta usługi można traktować jako klienta w powiązaniu klient-serwer między klientem usługi a jej dostawcą. Rejestr usług służy do przechowywania, przeszukiwania i udostępniania opisów usług oferowanych przez różnych dostawców. Rolą rejestru usług jest kojarzenie klienta usługi z dostawcą usługi. Po sparowaniu klienta z dostawcą, rejestr nie jest już potrzebny na obrazku pozostała część interakcji zachodzi bezpośrednio między klientem usługi a jej dostawcą. W każdej z wymienionych ról może występować dowolny program lub węzeł sieciowy. W pewnych okolicznościach ta sama aplikacja może pełnić kilka funkcji, na przykład do- stawcy usług dla końcowych odbiorców oraz klienta usług dostarczonych przez innych. W architekturze SOA pojawiają się także trzy operacje opublikuj , odszukaj oraz powiąż . Operacje te definiują kontrakty między rolami SOA: Opublikowanie usługi polega na jej zarejestrowaniu lub, innymi słowy, ogłoszeniu jej istnienia. Jest to rodzaj kontraktu między rejestrem usług a dostawcą. Kiedy dostawca usługi umieszcza jej opis w rejestrze usług, wszystkim potencjalnym klientom tej usługi udziela szczegółowych informacji na temat jej funkcji. Szczegóły interfejsu służącego do publikacji zależą od implementacji rejestru usług.
[ Pobierz całość w formacie PDF ]
zanotowane.pldoc.pisz.plpdf.pisz.plkskarol.keep.pl
|