pro tisk přednášek použijte nabídku tisku v ovládacím bloku
Slide c.  42

RPC – Remote Procedure Call •       klasické řešení (bez RPC): –     klient zformuluje svůj požadavek, sestaví jej do tvaru zprávy a odešle •     klient čeká (na asynchronní událost - příchod zprávy s odpovědí) - např. je suspendován –     zpráva s odpovědí přichází, klient je aktivován •       důsledky: –     klient si uvědomuje, že: •     pracuje v distribuovaném síťovém prostředí •     některé akce probíhají na vzdáleném počítači (předem neznámou rychlostí) –     klient se musí přizpůsobovat asynchronní povaze komunikace •     posílat zprávy, čekat na odpovědi, ... •     nezapadá to do zásad strukturovaného programování !!! •       řešení s RPC: –     RPC vytváří klientovi iluzi, že všechny akce probíhají “u něj”, a mají formu volání lokálních procedur •     každá akce končí v okamžiku výstupu (návratu) z příslušné procedury - klient se pak nemusí explicitně zabývat čekáním •     klient předává parametry operací jako parametry volané procedury –    a nikoli jako data, vkládaná do zpráv dle zásad příslušného komunikačního protokolu –     klient si nemusí uvědomovat, že pracuje v prostředí sítě •       výhody: –     výrazné zjednodušení implementace klienta (i serveru) •     v podstatě je pod klienta “podstrčena” další vrstva (vrstva RPC), která přijímá požadavky na volání procedur, “balí” je do zpráv a zprostředkovává jejich skutečné provedení na jiném uzlu •     klient tak volá procedury, které jsou ve skutečnosti prováděny na vzdáleném uzlu