Megosztás a következőn keresztül:


Környezeti leírók

Néha előfordul, hogy az elosztott alkalmazások megkövetelik, hogy a kiszolgálóprogram fenntartsa az állapotinformációkat az ügyfélhívások között. Az egynél több ügyfelet kiszolgáló kiszolgáló programoknak meg kell őriznie az egyes ügyfelek állapotadatait. Mivel az ügyfél és a kiszolgáló különböző címtereket használnak különböző számítógépeken, és nem feltétlenül bíznak egymásban, az adatmegosztás gyakori megközelítései gyakran nem működnek. Az ügyfél és a kiszolgáló például nem tudja globális változókban tartani a távoli munkamenet állapotadatait, mert nem osztják meg ugyanazt a globális címteret. Az információkat nehéz egy megosztott fájlban tárolni, mert különböző számítógépeken futnak. Leegyszerűsítő megoldás lehet, ha az összes állapotot az ügyfélnek küldi el, és az ügyfél a következő híváskor visszaküldi azt, de ennek a megközelítésnek vannak hibái: a kiszolgáló nem feltétlenül bízik abban, hogy az ügyfél a megfelelő állapotot adja vissza, és az állapot implicit módon kapcsolódhat a kiszolgálón lévő más állapothoz, például a fájlfogópontokhoz vagy a megnyitott szoftvercsatornákhoz.

A Microsoft RPC egy hatékony és biztonságos mechanizmust, az úgynevezett környezetkezelőket biztosít az adott ügyfélhez társított állapot fenntartásához a kiszolgálón. Az állapotinformációkat a kiszolgáló környezetének nevezzük. Az ügyfelek beszerezhetnek egy környezeti leírót, amely azonosítja a kiszolgáló környezetét az egyes RPC-munkamenetekhez.

Például egy elosztott alkalmazás minden ügyfele létrehozhat és frissíthet egy adatfájlt az RPC-munkamenethez. A kiszolgáló a saját fájlleíróját használhatja az egyes ügyfelek adatfájljaihoz környezeti leíróként. Minden alkalommal, amikor egy ügyfél műveleteket kér a kiszolgáló által létrehozott adatfájlon, az ügyfél átadja a környezeti leírót a kiszolgálónak. Az ügyfél valójában nem saját maga kapja meg a fájlkezelőt; egy átlátszatlan jogkivonatot kap, amelyet a kiszolgáló RPC-futtatási ideje egyedileg társíthat a fájlkezelővel. Mivel a környezeti leíró valójában egy fájlleíró, a környezeti leírónak csak a kiszolgáló címterében van értelme. Az ügyfélprogram azonban a környezeti leíróval megadhatja a kiszolgálónak, hogy melyik fájlon végezze el a frissítéseket.

Más adatok környezetkezelők is lehetnek. Az ügyfél és a kiszolgáló például egy adatbázisrekord rekordszámát használhatja fájlleíróként. Ha az ügyfélnek több frissítést kellett végrehajtania egy adott rekordon, akkor a rekordszámot környezeti leíróként szerezheti be. A rekordszámot minden alkalommal átadná a kiszolgálónak, amikor távoli eljárást hív meg az adatbázisrekord frissítéséhez.

A környezeti leírók leggyakrabban a kiszolgálón található memóriablokkra mutatnak, ahol a kiszolgáló különböző felügyeleti információkat tart fenn.

Ez a szakasz a környezetleírók meghatározására és használatára vonatkozó információkat mutatja be. A vitafórum a következő témakörökben jelenik meg: