A .NET Remoting a Microsoft által létrehozott összetevő . API a folyamatok közötti kommunikációhoz . A SOAP protokoll Microsoft általi megvalósítása ( webszolgáltatások ). 2002 -ben adták ki a .NET-keretrendszer 1.0-s verziójával . Ez a Microsoft technológiai sorozatának egyike, amely 1990 -ben kezdődött az OLE 16 bites Windowshoz való első verziójával . Az ilyen technológiák fejlesztésének közbenső lépései a COM 1993 -ban jelentek meg, és 1995 -ben véglegesítették COM-95, DCOM néven., amelyet 1997 -ben adtak ki (és átkeresztelték ActiveX-re), valamint a COM+-t a Microsoft Transaction Server -rel (MTS), amely 2000 -ben jelent meg [1] . Jelenleg a .NET Remotinget a WCF váltotta fel , amely a .NET-keretrendszer 3.0 része .
A család többi tagjához és a hasonló technológiákhoz, például a CORBA -hoz és az RMI -hez hasonlóan a .NET Remoting szolgáltatás a következő: a .NET Remoting infrastruktúra támogatásával a kliens folyamat üzenetet küld a szerverfolyamatnak, és választ kap. [2] [3] .
A .NET Remoting lehetővé teszi az alkalmazások számára, hogy létrehozzanak egy objektumot (úgynevezett távoli objektum ), amely elérhető a távoli határokon belül és az alkalmazás tartományában található egy folyamaton belül, egy másik folyamatban , amely az adott számítógépen fut, vagy akár egy másik számítógépen, amely hálózathoz kapcsolódik [4 ] . A .NET Remoting folyamat egy kérésfigyelőt tartalmaz egy objektumhoz a kiszolgálóalkalmazás - tartományban . Az ügyféloldalon a távoli objektumokhoz intézett kéréseket a .NET Remoting futási környezet olyan objektumok útján irányítja át Channel, amelyek a szállítási réteg szolgáltatásainak burkolói, például TCP -folyamok, HTTP -folyamok és elnevezett csövek . Ennek eredményeként a távoli objektumokhoz intézett ügyfélkód kérések nem különböznek a helyi hívásoktól, és a kívánt Channel-objektum példányának létrehozásával a .NET Remoting alkalmazás újrafordítás nélkül átvihető egy másik kommunikációs protokollra. A futtatókörnyezet maga hajtja végre az objektumok sorba rendezésének és felosztásának lépéseit a kliens és a szerver alkalmazástartományok közötti környezetben [4] .
A .NET Remoting a távoli (távolítható) objektumra való hivatkozást elérhetővé teszi az ügyfélalkalmazás számára, amely ezután úgy továbbítja a kéréseket a távoli objektumpéldánynak, mintha az egy helyi objektum lenne [4] . A kód tényleges végrehajtása azonban a szerver oldalon történik. A távoli objektum azonosítókkal rendelkezik aktiválási URL formájában . A szerverfolyamat konfigurációjától függően a távoli objektum példánya létrejön az URL-adatok [5] használatával történő csatlakozáskor a távoli objektumra mutató hivatkozás létrehozásának pillanatában vagy a távoli objektumhoz való első hozzáférés pillanatában. Egy objektum figyelőjét a .NET Remoting futási környezet hozza létre, amikor a kiszolgáló regisztrál egy csatornát, amelyet a távoli objektumhoz való csatlakozáshoz használ. Az ügyféloldalon a .NET Remoting keretrendszer létrehoz egy helyőrző objektumot ( proxy), amely a lecserélendő objektum pszeudo példánya. Nem valósítja meg egy távoli objektum funkcionalitását, hanem egy hasonló felületet biztosít, minden kérést átirányít a szerverobjektumra, és az eredményt visszaküldi a kliensnek. Ennek következtében a .NET Remoting keretrendszernek olyan metaadatokkal kell rendelkeznie, amelyek leírják a távoli objektum nyilvános felületét a proxy létrehozásához. Ez megtehető a metaadatokat tartalmazó összeállításhoz való statikus hivatkozással a fordítási időben, vagy a metaadatok dinamikus lekérésével WSDL vagy a Microsoft által kifejlesztett szabadalmaztatott formátumban.
A lekérdezés végrehajtása során minden, az objektumra irányuló metódushívás, beleértve a metódusazonosítót és az átadott paramétereket, egy bájtfolyamba sorosodik , és egy protokoll-specifikus kommunikációs csatornán keresztül jut el a fogadó proxy objektumhoz a szerver oldalon (" összesorolva "). . Az átvitel úgy történik, hogy adatokat írunk a csatorna [5] szállítási bemenetére . A szerver oldalon a proxy beolvassa az adatfolyamot a cső kimenetéből, és távoli komponenshívást kezdeményez a kliens nevében. Az eredményeket sorba rendezik, és egy csövön keresztül továbbítják a kliensnek, ahol a proxy beolvassa az eredményt és továbbítja a hívó alkalmazásnak [5] .
Ha egy távoli objektumnak visszahívást kell biztosítania egy ügyfélobjektum számára, akkor az ügyfél-visszahívási objektumot távolinak kell lennie, és a .NET Remoting infrastruktúrát úgy kell beállítani, hogy figyelőt hozzon létre hozzá [5] . A szerver egy másik csatornán vagy egy meglévő csatornán keresztül kapcsolódhat hozzá, ha az alapul szolgáló kapcsolat támogatja a kétirányú kommunikációt [5] . Egy csatorna több csatornaobjektumból is állhat, esetleg különböző szállítási mechanizmusokkal is. Így egy .NET Remoting alapú rendszer több alrendszerből állhat, amelyeket heterogén hálózatok kapcsolnak össze egymással, beleértve az internetet is [5]
.HÁLÓ | |
---|---|
Megvalósítások | |
Építészet | |
Infrastruktúra |
|
Microsoft nyelvek | |
Más nyelvek | |
Windows alapok | |
Alkatrészek | |
Összehasonlítások |
|
Jövő technológiái | |
Információs források |