musi być z powrotem wysłana do stanowiska B...

Pokaż mi serce nie opętane zwodniczymi marzeniami, a pokażę ci człowieka szczęśliwego.

(Zauważmy podobieństwo do
współbieżnie na wielu stanowiskach.
stronicowania na żądanie). Metodę tę zastosowano w protokole NFS (Ne-
Obu schematów dałoby się używać w celu dostępu do wielu plików rezy-
twork File System) firmy Sun Microsystems (zob. rozdz. 17); użyto jej także dujących na różnych stanowiskach. Wywołanie jednej zdalnej procedury mo-w nowszych wersjach systemu Andrew. Protokół SMB firmy Microsoft
głoby spowodować rozpoczęcie innej zdalnej procedury albo też przekazanie
(działający powyżej protokołów TCP/IP lub protokołu Microsoft NETBUI)
komunikatu do innego stanowiska. Podobnie proces Q mógłby podczas swo-
umożliwia również dzielenie pliku przez sieć. Więcej informacji na temat
jego działania wysłać do innego stanowiska komunikat, który spowodowałby
protokołu SMB znajduje się w p. 23.6.1.
utworzenie innego procesu. Nowy proces wysłałby komunikat z powrotem do
Jest więc oczywiste, że jeśli dostęp jest potrzebny tylko do małej części
Q albo powtórzyłby cykl tworzenia następnych procesów.
wielkiego pliku, to lepiej posłużyć się drugą metodą. Jeśli zaś chcemy mieć dostęp do sporej części pliku, to bardziej opłacalne jest skopiowanie całego pliku.
16.2.3 Wędrówka procesów
Zauważmy, że nie wystarcza tylko skopiować dane z jednego stanowiska
Logicznym rozszerzeniem wędrówki obliczeń jest wędrówka procesów.
na drugie. Jeśli oba stanowiska nie są całkowicie zgodne (np. jeśli używa się Przedłożony do wykonania proces nie zawsze jest wykonywany na stanowi-w nich różnych reprezentacji kodów znaków lub liczb całkowitych o różnej
sku, na którym go rozpoczęto. Może okazać się korzystne wykonanie całego
liczbie lub porządku bitów), to system musi także wykonać różnorodne tłu-
procesu lub jego części na innych stanowiskach. Schemat ten znajduje nastę-
maczenia danych.
pujÄ…ce uzasadnienia:
596 Rozdział 16 Struktury systemów rozproszonych
16.3 Usługi zdalne 597
• Równoważenie obciążeń: Procesy (lub podprocesy) można rozmiesz-
przez zdalny serwer na stanowisku A, który uzyska dostęp do pliku, obliczy
czać w sieci w celu wyrównywania obciążeń poszczególnych stanowisk.
pożądane wyniki, aby na koniec przesłać je do użytkownika.
• Przyspieszanie obliczeń: Jeśli pojedynczy proces daje się podzielić na Jednym ze sposobów organizacji tego przesyłania jest metoda usługi
pewną liczbę podprocesów, to mogą one być wykonane współbieżnie na
zdalnej (ang. remote service). Zamówienia na dostęp są dostarczane do serweróżnych stanowiskach, dzięki czemu łączny czas wykonania całego pro-
ra. Kontakt z danymi następuje w maszynie serwera, a otrzymane wskutek
cesu ulega skróceniu.
tych działań wyniki przekazuje się z powrotem do użytkownika. Między do-
stępami a ruchem na drodze do i od serwera istnieje bezpośrednia odpowied-
• Preferencje sprzętowe: Proces może odznaczać się pewnymi cechami,
niość. Zamówienia dostępu są tłumaczone na komunikaty dla serwerów,
które predestynują go do wykonania na wyspecjalizowanym procesorze
a odpowiedzi serwerów są pakowane do komunikatów i odsyłane z powrotem
(jest tak np. w przypadku odwracania macierzy, które łatwiej wykonać na
do użytkowników. Każdy dostęp jest obsługiwany przez serwer i powoduje
procesorze macierzowym niż na mikroprocesorze).
ruch w sieci. Czytanie powoduje na przykład wysłanie do serwera zamówie-
nia czytania oraz wysłanie do użytkownika odpowiedzi zawierającej potrzeb-
• Preferencje programowe: Do wykonania procesu może być potrzebne
ne dane.
oprogramowanie, które jest osiągalne tylko na określonym stanowisku,
z którego nie wolno go przenosić lub lepiej opłaca się przenieść do niego
proces.
16-3.1 Zdalne wywołania procedur
• Dostęp do danych: Tak jak w przypadku wędrówki obliczeń, gdy
Jedną z najpopularniejszych form usługi zdalnej jest wzorzec postępowania
w obliczeniach używa się wielu danych, zdalne wykonanie procesu może
określany jako RPC, czyli zdalne wywołanie procedury*, które omówiliśmy
okazać się bardziej opłacalne niż przenoszenie wszystkich danych do ma-
pokrótce w p. 4.6.3. Wywołanie RPC zaprojektowano jako sposób uogólnie-
cierzystego komputera procesu.
nia mechanizmu wywołania procedury na użytek systemów połączonych sie-
cią. Jest ono pod wieloma względami podobne do mechanizmu komunikacji
Zasadniczo istnieją dwie uzupełniające się techniki, które można zasto-
międzyprocesowej (1PC) - opisanego w p. 4.6 - i zazwyczaj jest budowane
sować do przenoszenia procesów w sieciach komputerowych. W pierwszej
powyżej takiego systemu. Ponieważ zajmujemy się środowiskiem, w którym
z nich system może próbować ukrywać fakt, że proces „wyemigrował" od
procesy są wykonywane w oddzielnych systemach, więc usługi zdalne muszą
klienta. Zaletą tego schematu jest to, że użytkownik nie musi w swoim pro-
być udostępniane na zasadzie wymiany komunikatów. W przeciwieństwie do gramie jawnie kodować przemieszczania procesu. Metody tej używa się zwy-komunikacji międzyprocesowej komunikaty wymieniane w trybie RPC mają
kle do równoważenia obciążeń i przyspieszania obliczeń w systemach jedno-
ściśle określoną budowę i nie sąjuż tylko zwykłymi pakietami danych. Są one rodnych, gdyż nie wymagają one od użytkownika żadnych wskazówek co do
adresowane do demona RPC prowadzącego nasłuch portu RPC w odległym
Copyright (c) 2009 Pokaż mi serce nie opętane zwodniczymi marzeniami, a pokażę ci człowieka szczęśliwego. | Powered by Wordpress. Fresh News Theme by WooThemes - Premium Wordpress Themes.