Sr-2-wyk-1.0-Slajd13

From Studia Informatyczne

Pieniek klienta i serwera

Pieniek klienta i serwera


Podstawowy problem jest następujący: Jak można sprawić , by z punktu widzenia uczestniczących procesów wywołanie zdalne przypominało lokalne ? Innymi słowy, celem jest dostarczenie procesowi wywołującemu wrażenia, że wywołuje zwyczajną, lokalną procedurę, a procesowi obsługującemu – że wywołanie pochodzi z lokalnej maszyny. Najistotniejsze jest ukrycie rozproszenia oraz komunikacji sieciowej.

Rozwiązaniem jest tak zwany pieniek (ang. stub ). Pieniek klienta to procedura, którą w rzeczywistości wywołuje klient, a która przetwarza wywołanie i wartości jego parametrów na komunikat sieciowy. Z punktu widzenia procesu klienta wywołanie zdalne przebiega wówczas tak samo, jak lokalne. Komunikat sieciowy, po dotarciu do maszyny serwera, musi zostać na powrót przetworzony do postaci wywołania procedury. Zajmuje się tym pieniek serwera . Po odtworzeniu z wiadomości wywołania pieniek serwera dba o jego wykonanie, a następnie wynik, wraz z parametrami przekształca na wiadomość sieciową i wysyła do procesu klienta. Z punktu widzenia zdalnej procedury wydaje się więc, że wywołanie pochodzi z lokalnej maszyny. Wszelką „świadomość rozproszenia” posiadają pieńki po obydwu stronach, a nie same procesy klienta i serwera.

Zastosowanie pieńków nie byłoby atrakcyjne dla programisty, gdyby sam musiał je tworzyć. Okazuje się jednak, że pieńki mogą być w całości wygenerowane automatycznie. Zostanie to omówione na jednym z kolejnych slajdów.


<< Poprzedni slajd | Spis treści | Następny slajd >>