© DSRG 2004 Systemy Rozproszone - Zdalne wywołanie procedury 1 www.cs.agh.edu.pl Zdalne wywołanie procedury Implementacja Sun RPC Ćwiczenie laboratoryje:

Slides:



Advertisements
Podobne prezentacje
Zastosowanie LDAP w obsłudze katalogów bibliotecznych
Advertisements

Język C/C++ Funkcje.
Mechanizmy pracy równoległej
Wzorce.
Sieci komputerowe Usługi sieciowe Piotr Górczyński 27/09/2002.
Systemy rozproszone W. Bartkiewicz
Systemy rozproszone W. Bartkiewicz
Systemy rozproszone W. Bartkiewicz
Kamil Smitkiewicz Bezpieczeństwo w PHP.
WEB SERVICE Stefan Rutkowski.
CORBA Łukasz Wnęk.
Rozszerzalność systemów rozproszonych
1 Linux jako system wielozadaniowy i wielodostępny.
Microsoft Professional Developer Days 2004
Projektowanie i implementacja programów obsługujących gniazdka Wykład II Zbigniew Brożbar Paweł Baranowski.
Projektowanie programu obsługującego gniazdka
RMI I RMI-IIOP Wprowadzenie Co to jest RMI?
FTP Autor: Topolewski Jacek.
ODE Triggery. Wstęp n Triggery są trójką zdarzenie-warunek-akcja (event-condition- action). n Zdarzenia mogą być proste lub złożone, co zostanie omówione.
Systemy rozproszone Komunikacja (I)
Obsługa plików csv Do odczytu z pliku csv można użyć następującego kodu: $fp = fopen ("strony.csv","r"); $num = 0; while ($data = fgetcsv ($fp, 1000, ";"))
Usługi sieciowe Wykład 5 DHCP- debian Jarosław Kurek WZIM SGGW 1.
Damian Urbańczyk PHP Obsługa sesji.
Obsługa serwera zdalnego przez klienta FTP
Wykład 2. Wprowadzenie do architektur systemów rozproszonych
Proxy (WWW cache) Sieci Komputerowe
Podstawy programowania PP – LAB6 Wojciech Pieprzyca.
Enteprise Java Beans Emil Wcisło.
Wzorce projektowe w J2EE
Inżynieria Oprogramowania
Podstawy programowania II Wykład 2: Biblioteka stdio.h Zachodniopomorska Szkoła Biznesu.
Web Serwisy w praktyce Technologie internetowe ( )
Rozwój aplikacji. To zestaw narzędzi do budowania i optymalizacji złożonych aplikacji opartych na przeglądarce. To zestaw narzędzi do budowania i optymalizacji.
Podstawy programowania II
EasyDIT Rozwiązanie dla księgowania dostaw w drodze
Generatory dokumentacji kodu źródłowego
EasyMOD kontrola modyfikacji i rozszerzeń systemu SAP
EasyLoad BI zarządzanie wczytywaniem danych do hurtowni przez użytkowników biznesowych Prezentacja rozwiązania.
WebAPI – funkcjonalność i rozwój narzędzia
Prezentacja i szkolenie
Sieci komputerowe.
Podstawy informatyki 2013/2014
oprogramowania drEryk
Linux w sieci Konfigurowanie interfejsu sieciowego.
Komendy SQL do pracy z tabelami i bazami

Aplikacje TCP i UDP. Łukasz Zieliński
Adam Ptaszek Krystian Formiński
Kurs języka C++ – wykład 9 ( )
Podstawy programowania
Umieszczenie gotowej strony w sieci
XML Publisher Przedmiot i zakres szkolenia Przedmiot i zakres szkolenia Przeznaczenie XML Publisher Przeznaczenie XML Publisher Definiowanie Definiowanie.
Jednym z podstawowych celów tworzenia sieci komputerowych jest współdzielenie zasobów, takich jak pliki lub drukarki. Każdy z takich zasobów musi być udostępniony,
Autor: Damian Urbańczyk
K URS JĘZYKA C++ – WYKŁAD 1 ( ) Łagodne wprowadzenie do języka C++
Andrzej Majkowski 1 informatyka +. 2 Bezpieczeństwo protokołu HTTP Paweł Perekietka.
Piotr Czapiewski Wydział Informatyki ZUT. Web Services Description Language.
Obiekty COM Przemysław Buczkowski. Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM.
Podział sieci komputerowych
Seminarium Dyplomowe: Metodyka i Techniki Programowania Autor: Bartłomiej Fornal.
Środowisko wspomagania automatycznej instalacji GNU/Linux „Multistart” prezentacja pracy dyplomowej Marta i Paweł Szcześniak.
Architektura Rafał Hryniów. Architektura Wizja projektu systemu, którą dzielą twórcy Struktura komponentów systemu, ich powiązań oraz zasad i reguł określających.
ASP.NET Dostęp do bazy danych z poziomu kodu Elżbieta Mrówka-Matejewska.
Zarządzanie stanem w aplikacjach ASP.NET Elżbieta Mrówka-Matejewska
Czym jest PHP? ● Językiem programowania przeznaczonym do tworzenia i generowania dynamicznych stron WWW. Działa po stronie serwera: Klient Żądanie strony.
Komponentowe systemy rozproszone
Wydział Matematyki, Informatyki i Architektury Krajobrazu
Sieci komputerowe Usługi sieciowe 27/09/2002.
Aplikacje i usługi internetowe
Umieszczenie gotowej strony w sieci
Zapis prezentacji:

© DSRG 2004 Systemy Rozproszone - Zdalne wywołanie procedury 1 Zdalne wywołanie procedury Implementacja Sun RPC Ćwiczenie laboratoryje: Jacek Cała Aleksander Motyka

Systemy Rozproszone - Zdalne wywołanie procedury 2 © DSRG Pytania Zadania mechanizmu RPC? Co to jest operacja powtarzalna (ang. idempotent) ? Cele wprowadzenia specyfikacji XDR? Czym jest łącznik (ang. stub) klienta/serwera?

Systemy Rozproszone - Zdalne wywołanie procedury 3 © DSRG Specyfikacja usług RPC Numer programu – liczba 32-bitowa – –1fff ffff – SunRPC – –3fff ffff – definiowane przez użytkownika – –5fff ffff – tymczasowe – –ffff ffff – zarezerwowane Numer wersji – liczba 32-bitowa Numer procedury – liczba 32-bitowa

Systemy Rozproszone - Zdalne wywołanie procedury 4 © DSRG Program rpcbind Serwer dokonujący konwersji numerów programów RPC na numer portu tzw. portmapper; port 111 demon rpcbind serwer klient [1] [2][3] rejestracja usługi odwzorowanie adresuwywołanie

Systemy Rozproszone - Zdalne wywołanie procedury 5 © DSRG Polecenie rpcinfo Informacje nt. usług zarejestrowanych w rpcbind. –wyświetlenie wszystkich usług na wskazanym serwerze –wyświetlenie usług w sposób zwarty [-s] –wyświetlenie wybranej usługi [-l] –usunięcie wybranego serwisu [-d]

Systemy Rozproszone - Zdalne wywołanie procedury 6 © DSRG Polecenie rpcgen Jako wejście pobiera plik specyfikacji usług w formacie XDR. Jako wyjście generuje kod stuba serwera i klienta w języku C. service.x client.c service_proc.c service.h service_cltn.c service_svc.c libnsl service client cc rpcgen

Systemy Rozproszone - Zdalne wywołanie procedury 7 © DSRG Polecenie rpcgen Ukrywa niskopoziomowe wywołania biblioteki RPC: –clnt_* –svc_* –rpc_* –xdr_* Generuje gotowe funkcje na potrzeby serwisu oraz klienta

Systemy Rozproszone - Zdalne wywołanie procedury 8 © DSRG Ważniesze funkcje CLIENT* clnt_create( const char* host, const rpcprog_t prognum, const rpcvers_t versnum, const char* nettype) –zwraca zmienną typu CLIENT, która będzie używana przy generowaniu wywołań do serwera. bool_t clnt_control( CLIENT* clnt, const uint_t req, char* info) –pozwala na odczyt/zmianę parametrów zmiennej typu CLIENT void clnt_destroy(CLIENT* clnt) –usuwa utworzoną strukturę klienta

Systemy Rozproszone - Zdalne wywołanie procedury 9 © DSRG Zadanie 1 Użycie rpcgen dla przykładowej specyfikacji db.x –rpcgen -a -C db.x –gmake -f makefile.db Analiza wygenerowanych plików –plik nagłówkowy –przykładowe implementacje klienta i serwera

Systemy Rozproszone - Zdalne wywołanie procedury 10 © DSRG Zadanie 2 Opracowanie klienta odczytującego z bazy rekord: –RecordName == autor-02 –RecordID == 1 Baza umieszczona została na komputerze galaxy oraz jasmin

Systemy Rozproszone - Zdalne wywołanie procedury 11 © DSRG Zadanie 3 Napisanie własnego programu usługi: –podnoszącego przekazaną liczbę rzeczywistą do kwadratu, –procedura usługowa powinna generować na standardowe wyjście komunikat o jej wywołaniu. Program powinien umieszczony w pliku db.x UWAGA! Numery programów muszą być unikalne