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


Georeplikálás az Azure SignalR-ben

A helyi jelenlétet vagy robusztus feladatátvételi rendszert igénylő vállalatok gyakran úgy döntenek, hogy szolgáltatásokat helyeznek üzembe több Azure-régióban. A georeplikáció Azure SignalR-be való integrálásával a többrégiós forgatókönyvek kezelése jelentősen egyszerűbbé vált.

A georeplikációs szolgáltatás használatának előnyei

  • Rugalmasabb a regionális kimaradásokkal szemben: Ha regionális leállás történik, az Azure SignalR DNS más régiókban lévő kifogástalan replikákra lesz feloldva.
  • Régiók közötti kommunikáció. A különböző replikák úgy kommunikálhatnak egymással, mintha ugyanaz a példány lennének.
  • Megnövelt hálózati sebesség: A földrajzilag elosztott ügyfelek a legközelebbi replikához csatlakoznak. Ezek a replikák az Azure globális hálózati gerinchálózatán keresztül kommunikálnak, így biztosítva a gyors és stabil hálózatkezelést.
  • Megosztott konfigurációk. Minden replika megtartja az elsődleges Azure SignalR Service-erőforrás konfigurációját.

Előfeltételek

Példa használati esetre

A Contoso egy közösségimédia-vállalat, amelynek ügyfélbázisa az Egyesült Államokban és Kanadában is elterjedt. Az ügyfelek kiszolgálása és az egymással való kommunikáció engedélyezése érdekében a Contoso az USA középső régiójában futtatja szolgáltatásait. Az Azure SignalR szolgáltatás a felhasználói kapcsolatok kezelésére és a felhasználók közötti kommunikáció megkönnyítésére szolgál. A Contoso végfelhasználói többnyire telefonos felhasználók. A hosszú földrajzi távolságok miatt a kanadai végfelhasználók nagy késést és gyenge hálózati minőséget tapasztalhatnak.

Diagram egy Azure SignalR-példány két országból érkező forgalom kezelésére.

A georeplikációs funkció megjelenése előtt a Contoso beállíthat egy másik Azure SignalR szolgáltatást a Canada Centralban a kanadai felhasználók kiszolgálására. A földrajzilag közelebbi Azure SignalR szolgáltatás beállításával a végfelhasználók mostantól jobb hálózati minőséggel és kisebb késéssel rendelkeznek.

Több Azure SignalR-szolgáltatás kezelése azonban kihívást jelent:

  1. A Kanada és az USA felhasználói közötti beszélgetés engedélyezéséhez régiók közötti kommunikációs mechanizmusra lenne szükség.
  2. A fejlesztői csapatnak két különálló Azure SignalR-szolgáltatást kell kezelnie, amelyek mindegyike külön tartományt és kapcsolati sztring.
  3. Ha regionális kimaradás történik, a forgalmat át kell váltani egy másik régióra.

Diagram két Azure SignalR-példány két országból érkező forgalom kezelésére.

A georeplikálás kihasználása

Az új georeplikációs funkcióval a Contoso mostantól létrehozhat egy replikát a Canada Centralban, így hatékonyan leküzdheti a fent említett akadályokat.

Diagram egy Azure SignalR-példány replikával való használatáról két országból érkező forgalom kezelésére.

SignalR-replika létrehozása

Replika létrehozásához lépjen a SignalR Replikák panelre az Azure Portalon, és kattintson a Hozzáadás gombra a replika létrehozásához. A létrehozáskor automatikusan engedélyezve lesz.

Képernyőkép az Azure SignalR-hez készült replika létrehozásáról a Portálon.

A létrehozás után a replika nevére kattintva megtekintheti/szerkesztheti a replikát a portálon.

Képernyőkép az Azure SignalR replikaerőforrás áttekintési paneljéről.

Díjszabás és erőforrásegység

Minden replika saját unit és autoscale settings.

A replika az Azure SignalR Szolgáltatás prémium szintű szolgáltatása . Minden replika számlázása külön történik a saját egység és a kimenő forgalom alapján. Az ingyenes üzenetkvótát is külön számítjuk ki.

Az előző példában a Contoso hozzáadott egy replikát a Canada Centralban. A Contoso a Canada Centralban fizetne a replikáért az egység és az üzenet alapján Prémium áron.

A régiók közötti kimenő forgalom kimenő forgalmának kimenő forgalmi díjai lesznek. Ha egy üzenet át lesz osztva a replikák között, és az átvitel után sikeresen el lesz küldve egy ügyfélnek vagy kiszolgálónak, kimenő üzenetként lesz számlázva.

Replika törlése

Miután létrehozott egy replikát az Azure SignalR Szolgáltatáshoz, bármikor törölheti, ha már nincs rá szükség.

Replika törlése az Azure Portalon:

  1. Lépjen az Azure SignalR szolgáltatásra, és válassza a Replikák panelt. Kattintson a törölni kívánt replikára.
  2. Kattintson a Törlés gombra a replika áttekintési paneljén.

A SignalR-replika működésének ismertetése

Az alábbi ábra a SignalR-replikák funkcióinak rövid illusztrációját mutatja be:

Az Azure SignalR-replika ívének diagramja.

  1. Az ügyfél egyeztet az alkalmazáskiszolgálóval, és átirányítást kap az Azure SignalR szolgáltatáshoz. Ezután feloldja a SignalR szolgáltatás teljes tartománynevét (FQDN) – contoso.service.signalr.net. Ez az FQDN egy Traffic Managerre mutat, amely a legközelebbi regionális SignalR-példány canonical Name (CNAME) nevét adja vissza.
  2. Ezzel a CNAME-vel az ügyfél kapcsolatot létesít a regionális példánysal (Replikával).
  3. A két replika szinkronizálja az adatokat egymással. Az egyik replikának küldött üzenetek szükség esetén átkerülnek más replikákba.
  4. Ha egy replika nem felel meg a Traffic Manager (TM) által végzett állapot-ellenőrzésnek, a TM kizárja a hibás példány végpontját a tartományfeloldási folyamatból. Részletekért tekintse meg az alábbi rugalmassági és vészhelyreállítási lehetőségeket

Feljegyzés

  • Az adatsíkban az elsődleges Azure SignalR-erőforrás a replikákkal azonos módon működik

Rugalmasság és vészhelyreállítás

Az Azure SignalR Service egy forgalomkezelőt használ az állapot-ellenőrzésekhez és a DNS-feloldáshoz a replikák felé. Normál körülmények között, ha minden replika megfelelően működik, az ügyfelek a legközelebbi replikához lesznek irányítva. Ilyenek például a következők:

  • A közel eastus lévő ügyfelek a következő helyen eastustalálható replikára lesznek irányítva: .
  • Hasonlóképpen, a közel westus lévő ügyfelek a replikához lesznek irányítva a következőben westus: .

Az Eastus régióban (alább látható) regionális kimaradás esetén a forgalomkezelő észleli az adott régió állapot-ellenőrzési hibáját. Ezután a hibás replika DNS-je ki lesz zárva a traffic manager DNS-feloldási eredményeiből. A DNS élettartamának (TTL) 90 másodpercre beállított időtartama után a rendszer átirányítja az ügyfeleket eastus a replikához a következő helyen westus: .

Az Azure SignalR-replika feladatátvételének diagramja.

Ha a probléma eastus megoldódott, és a régió ismét online állapotba kerül, az állapot-ellenőrzés sikeres lesz. eastus Az ügyfelek ezután ismét a régiójuk replikájához lesznek irányítva. Ez az áttűnés zökkenőmentes, mivel a csatlakoztatott ügyfelek nem lesznek hatással a meglévő kapcsolatok bezárására.

Az Azure SignalR-replika feladatátvételi helyreállításának diagramja.

Ez a feladatátvételi és helyreállítási folyamat automatikus, és nem igényel manuális beavatkozást.

A kiszolgálókapcsolatok esetében a feladatátvétel és a helyreállítás ugyanúgy működik, mint az ügyfélkapcsolatok esetében.

Feljegyzés

  • Ez a feladatátvételi mechanizmus az Azure SignalR szolgáltatáshoz készült. Az alkalmazáskiszolgáló regionális kimaradásai nem tartoznak a dokumentum hatókörébe.

A replikavégpont letiltása vagy engedélyezése

Replika beállításakor engedélyezheti vagy letilthatja annak végpontját. Ha le van tiltva, az elsődleges teljes tartománynév DNS-feloldása nem tartalmazza a replikát, ezért a forgalom nem lesz átirányítva hozzá.

Az Azure SignalR replika végpontbeállításának diagramja.

A végpont létrehozását követően is engedélyezheti a végpont letiltását. Az elsődleges erőforrás replikák paneljén kattintson a replika jobb oldalán található három pontra, és válassza a Végpont engedélyezése vagy a Végpont letiltása lehetőséget:

Az Azure SignalR replika végpontjának módosításának diagramja.

A replikáció törlése előtt fontolja meg a végpont letiltását. Idővel a meglévő kapcsolatok megszakadnak. Mivel nem jönnek új kapcsolatok, a replikáció végül tétlenné válik. Ez biztosítja a zökkenőmentes törlési folyamatot.

Ez a funkció regionális problémák elhárításához is hasznos.

Feljegyzés

  • A DNS-gyorsítótár miatt eltarthat néhány percig, amíg a DNS-frissítés érvénybe lép.
  • A meglévő kapcsolatok mindaddig nem változnak, amíg le nem választják őket.

A replikák hozzáadása utáni teljesítményre gyakorolt hatás

A replikák engedélyezése után az ügyfelek természetesen a földrajzi helyük alapján fognak elosztani. Bár a SignalR felelősséget vállal az adatok szinkronizálásáért ezeken a replikákon, örömmel fogja tudni, hogy a kiszolgálóbetöltéssel járó többletterhelés a leggyakoribb használati esetekben minimális.

Pontosabban, ha az alkalmazás általában nagyobb csoportoknak (10-es méret >) vagy egyetlen kapcsolatnak közvetít, a szinkronizálás teljesítményhatása alig észrevehető. Ha kis csoportokat (10-es méretű < ) vagy egyéni felhasználókat küld, előfordulhat, hogy egy kicsit nagyobb szinkronizálási többletterhelést tapasztal.

A hatékony feladatátvételi felügyelet érdekében ajánlott az egyes replikák egységméretét beállítani az összes forgalom kezeléséhez. Másik lehetőségként engedélyezheti az automatikus skálázást a kezeléshez.

További teljesítményértékelésért tekintse meg a Teljesítmény című témakört.