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


Event Grid és megbízhatóság

Az Azure Event Grid segítségével egyszerűen hozhat létre alkalmazásokat eseményalapú architektúrákkal. Ez a megoldás beépített támogatást nyújt az Azure-szolgáltatásokból származó eseményekhez, például a tárolóblobokhoz és az erőforráscsoportokhoz. Az Event Grid egyéni témakörök használatával a saját eseményeket is támogatja.

Az Event Grid használatával kapcsolatos további információkért tekintse meg az Egyéni események létrehozása és irányítása az Azure Event Griddel című témakört.

Annak megértéséhez, hogy az Event Grid hogyan hoz létre megbízhatóbb számítási feladatot, hivatkozzon a kiszolgálóoldali georedukciós helyreállításra az Azure Event Gridben.

A következő szakaszok az Azure Event Gridre és a megbízhatóságra vonatkoznak:

  • Kialakítási szempontok
  • Konfigurációs ellenőrzőlista
  • Ajánlott konfigurációs beállítások
  • Forrásösszetevők

Kialakítási szempontok

Az Azure Event Grid üzemidős SLA-t biztosít. További információkért tekintse meg az Event Grid SLA-ját.

Ellenőrzőlista

A megbízhatóságot szem előtt tartva konfigurálta az Azure Event Gridet?

  • Event Grid-példány üzembe helyezése régiónként többrégiós Azure-megoldás esetén.
  • Az Event Grid monitorozása sikertelen eseménykézbesítés esetén.
  • Kötegelt események használata.
  • Az eseménykötegek mérete nem haladhatja meg 1MB a méretet.
  • A kötegelt méret kiválasztásának konfigurálása és optimalizálása a terheléstesztelés során.
  • Győződjön meg arról, hogy az Event Grid-üzenetek csak akkor fogadhatók el válaszokkal HTTP 200-204 , ha egyéni kódot tartalmazó végpontra küldik.
  • Az Event Grid monitorozása sikertelen esemény-közzététel esetén.

Konfigurációs javaslatok

Az Azure Event Grid konfigurálásakor vegye figyelembe az alábbi javaslatokat a megbízhatóság optimalizálásához:

Ajánlás Leírás
Az Event Grid monitorozása sikertelen eseménykézbesítés esetén. A Delivery Failed metrika minden alkalommal nő, amikor egy üzenet nem küldhető el egy eseménykezelőnek (időtúllépés vagy nem200-204 HTTP állapotkód). Ha egy esemény nem veszhet el, állítson be egy DLQ-tárfiókot. A DLQ-fiókban a maximális újrapróbálkozás száma után nem kézbesíthető események kerülnek elhelyezésre. Igény szerint implementálhat egy értesítési rendszert a DLQ-tárfiókon, például egy új fájlesemény Event Griden keresztüli kezelésével.
Kötegelt események használata nagy átviteli sebességű forgatókönyvekben. A szolgáltatás egy json több eseményt tartalmazó tömböt fog kézbesíteni az előfizetőknek, nem pedig egy eseményt tartalmazó tömböt. A fogyasztó alkalmazásnak képesnek kell lennie a tömbök feldolgozására.
Az eseménykötegek mérete nem haladhatja meg 1MB a méretet. Ha az üzenet hasznos adattartalma nagy, csak egy vagy néhány üzenet fér el a kötegben. A fogyasztó szolgáltatásnak további eseménykötegeket kell feldolgoznia. Ha az esemény nagy hasznos adattartalommal rendelkezik, fontolja meg máshol, például a blobtárolóban való tárolást, és adjon át egy hivatkozást az eseményben. Ha a CloudEvents-sémán keresztül integrál harmadik féltől származó szolgáltatásokkal, nem ajánlott túllépni 64KB az eseményeket.
A kötegelt méret kiválasztásának konfigurálása és optimalizálása a terheléstesztelés során. A kötegméret kiválasztása a hasznos adatok méretétől és az üzenetkötettől függ.
Az Event Grid monitorozása sikertelen esemény-közzététel esetén. A Unmatched metrikában megjelennek a közzétett, de előfizetéssel nem egyező üzenetek. Az alkalmazás architektúrájától függően az utóbbi szándékos lehet.

Forrásösszetevők

Az összes elérhető Event Grid-témakör bemeneti sématípusának meghatározásához használja a következő lekérdezést:

Resources 
| where type == 'microsoft.eventgrid/topics'
| project name, resourceGroup, location, subscriptionId, properties['inputSchema']

Az Event Grid-tartományok meglévő privát végpontjainak erőforrás-azonosítójának lekéréséhez használja a következő lekérdezést:

Resources 
| where type == 'microsoft.eventgrid/domains' and notnull(properties['privateEndpointConnections']) 
| mvexpand properties['privateEndpointConnections'] 
| project-rename privateEndpointConnections = properties_privateEndpointConnections 
| project name, resourceGroup, location, subscriptionId, privateEndpointConnections['properties']['privateEndpoint']['id']

Az összes elérhető Event Grid-tartomány nyilvános hálózati hozzáférési állapotának azonosításához használja a következő lekérdezést:

Resources 
| where type == 'microsoft.eventgrid/domains' 
| project name, resourceGroup, location, subscriptionId, properties['publicNetworkAccess']

Az összes nyilvános Event Grid-tartomány tűzfalszabályainak azonosításához használja a következő lekérdezést:

Resources 
| where type == 'microsoft.eventgrid/domains' and properties['publicNetworkAccess'] == 'Enabled'
| project name, resourceGroup, location, subscriptionId, properties['inboundIpRules']

Az összes nyilvános Event Grid-témakör tűzfalszabályainak azonosításához használja a következő lekérdezést:

Resources 
| where type == 'microsoft.eventgrid/topics' and properties['publicNetworkAccess'] == 'Enabled'
| project name, resourceGroup, location, subscriptionId, properties['inboundIpRules']

Az Event Grid-témakörökben meglévő privát végpontok erőforrás-azonosítójának lekéréséhez használja a következő lekérdezést:

Resources 
| where type == 'microsoft.eventgrid/topics' and notnull(properties['privateEndpointConnections']) 
| mvexpand properties['privateEndpointConnections'] 
| project-rename privateEndpointConnections = properties_privateEndpointConnections 
| project name, resourceGroup, location, subscriptionId, privateEndpointConnections['properties']['privateEndpoint']['id']

Az összes elérhető Event Grid-tartomány bemeneti sématípusának meghatározásához használja a következő sémát:

Resources 
| where type == 'microsoft.eventgrid/domains'
| project name, resourceGroup, location, subscriptionId, properties['inputSchema']

Az összes elérhető Event Grid-témakör nyilvános hálózati hozzáférésének állapotának azonosításához használja a következő lekérdezést:

Resources 
| where type == 'microsoft.eventgrid/topics' 
| project name, resourceGroup, location, subscriptionId, properties['publicNetworkAccess']

Következő lépés