Sdílet prostřednictvím


Rozhraní API mikroslužeb využívající Dapr

Azure Container Apps poskytuje rozhraní API založená na prostředí Dapr (Distributed Application Runtime), která pomáhají psát a implementovat jednoduché, přenosné, odolné a zabezpečené mikroslužby. Dapr spolupracuje s Azure Container Apps jako abstraktní vrstvou, která poskytuje platformu s nízkou údržbou a škálovatelnou platformou. Azure Container Apps nabízí výběr plně spravovaných rozhraní DAPR API, komponent a funkcí, které se zaměřují konkrétně na scénáře mikroslužeb. Jednoduše povolte a nakonfigurujte Dapr jako obvykle v prostředí kontejnerové aplikace.

Jak rozhraní API mikroslužeb fungují s vaší aplikací kontejneru

Nakonfigurujte rozhraní API mikroslužeb pro prostředí aplikací kontejnerů pomocí aplikace kontejneru s podporou Dapr, komponenty Dapr nakonfigurované pro vaše řešení a sajdkáru Dapr, která mezi nimi vyvolá komunikaci. Následující diagram znázorňuje tyto základní koncepty s využitím pub/sub API jako příkladu.

Diagram znázorňující dapr pub/sub a jeho fungování v Container Apps

Popisek Nastavení Dapr Popis
1 Kontejnerové aplikace s povoleným Dapr Dapr je povolen na úrovni aplikace kontejneru konfigurací sady argumentů Dapr. Tyto hodnoty platí pro všechny revize dané aplikace kontejneru při spuštění v režimu více revizí.
2 Dapr Plně spravovaná rozhraní API Dapr se zveřejňují pro každou aplikaci kontejneru prostřednictvím sajdkáru Dapr. Rozhraní DAPR API je možné vyvolat z vaší aplikace kontejneru prostřednictvím protokolu HTTP nebo gRPC. Sajdkárna Dapr běží na portu HTTP 3500 a gRPC portu 50001.
3 Konfigurace komponenty Dapr Dapr používá modulární návrh, ve kterém se funkce dodává jako součást. Komponenty Dapr je možné sdílet napříč několika kontejnerovými aplikacemi. Identifikátory aplikace Dapr zadané v poli oborů určují, které aplikace kontejnerů s podporou dapr načítají danou komponentu za běhu.

Podporovaná rozhraní DAPR API, komponenty a nástroje

Spravovaná rozhraní API

Azure Container Apps nabízí obecně dostupná obecně dostupná rozhraní DAPR API (rozhraní API stavebních bloků a operační rozhraní API). Tato rozhraní API jsou plně spravovaná a podporovaná pro použití v produkčních prostředích.

Další informace o používání alfa dapr API a funkcí najdete v nejčastějších dotazech k Dapr.

Diagram znázorňující rozhraní DAPR API

Rozhraní API stavebních bloků

Rozhraní API stavebního bloku Status Popis
Vyvolání mezi službami GA Zjišťování služeb a provádění spolehlivých, přímých volání mezi službami s automatickým ověřováním a šifrováním mTLS Podívejte se na známá omezení pro vyvolání služby Dapr v Azure Container Apps.
Správa stavu GA Poskytuje možnosti správy stavu pro transakce a operace CRUD.
Pub/sub GA Umožňuje aplikacím kontejnerů vydavatele a odběratele interkomunikovat prostřednictvím zprostředkujícího zprostředkovatele zpráv. Můžete také vytvořit deklarativní odběry tématu pomocí souboru JSON externí komponenty. Přečtěte si další informace o deklarativním pub/sub API.
Vazby GA Aktivace aplikací na základě událostí
Herci GA Herci Dapr jsou jednotky práce řízené jedním vláknem řízené zprávami navržené tak, aby se rychle škálovaly. Například v situacích náročných na nárazové zatížení.
Tajné kódy GA Získejte přístup k tajným kódům z kódu aplikace nebo odkazujte na zabezpečené hodnoty v komponentách Dapr.
Konfigurace GA Načtení a přihlášení k odběru položek konfigurace aplikace pro podporovaná úložiště konfigurací

Provozní rozhraní API

Provozní rozhraní API Status Popis
Stav GA Sondy kontroly stavu, které monitorují připravenost nebo živou připravenost dapr a inicializace sad SDK. Rozhraní API pro stav je k dispozici pouze pro protokol HTTP.
Metadata GA Vrátí informace o sajdkáře, což umožňuje zjistitelnost za běhu.

Kompatibilní sady SDK

Nejnovější balíčky klientské sady SDK pro Dapr jsou kompatibilní s Azure Container Apps. Můžete použít libovolnou z podporovaných rozhraní API ga Dapr s následujícími verzemi klientské sady SDK Dapr:

Jazyk Verze sady SDK
Java 1.12.0
Go 1.11.0
Python 1.14.0
.NET 1.14.0
JavaScript 3.3.1
Rust 0.15.1

Poznámka:

Balíčky sdk serveru Dapr, actor a workflow v současné době nejsou kompatibilní s Azure Container Apps. Přečtěte si další informace o všech balíčcích sady Dapr SDK.

Komponenty Dapr

Komponenty vrstvy 1 a vrstvy 2

Podporuje se podmnožina komponent Dapr. V této podmnožině jsou komponenty Dapr rozdělené do dvou kategorií podpory: vrstva 1 nebo vrstva 2.

  • Komponenty vrstvy 1: Stabilní komponenty, které přijímají okamžité šetření v kritických scénářích (zabezpečení nebo závažné regrese). V opačném případě Microsoft spolupracuje s opensourcovou verzí na adresu v opravě hotfix nebo v příští pravidelné verzi.
  • Komponenty vrstvy 2: Komponenty, které jsou vyšetřeny na nižší prioritě, protože nejsou ve stabilním stavu nebo jsou u jiného poskytovatele.
Komponenty vrstvy 1
rozhraní API Komponenta Typ
Správa stavu Azure Cosmos DB
Azure Blob Storage v1
Azure Table Storage
Microsoft SQL Server
state.azure.cosmosdb
state.azure.blobstorage
state.azure.tablestorage
state.sqlserver
Publikování a přihlášení k odběru Fronty služby Azure Service Bus
Téma služby Azure Service Bus
Azure Event Hubs
pubsub.azure.servicebus.queues
pubsub.azure.servicebus.topics
pubsub.azure.eventhubs
Vazba Fronty Azure Storage
Fronty služby Azure Service Bus
Azure Blob Storage
Azure Event Hubs
bindings.azure.storagequeues
bindings.azure.servicebusqueues
bindings.azure.blobstorage
bindings.azure.eventhubs
Správa tajných kódů Azure Key Vault secretstores.azure.keyvault
Komponenty vrstvy 2
rozhraní API Komponenta Typ
Správa stavu PostgreSQL
MySQL a MariaDB
Redis
state.postgresql
state.mysql
state.redis
Publikování a přihlášení k odběru Apache Kafka
Streamy Redis
pubsub.kafka
pubsub.redis
Vazba Azure Event Grid
Azure Cosmos DB
Apache Kafka
PostgreSQL
Redis
Cron
bindings.azure.eventgrid
bindings.azure.cosmosdb
bindings.kafka
bindings.postgresql
bindings.redis
bindings.cron
Konfigurace PostgreSQL
Redis
configuration.postgresql
configuration.redis

Přečtěte si další informace o tom, jak používat podporované komponenty Dapr v Azure Container Apps.

Nástroje

Azure Container Apps zajišťuje kompatibilitu s opensourcovými nástroji Dapr, jako jsou sady SDK a rozhraní příkazového řádku.

Omezení

  • Specifikace konfigurace Dapr: Všechny možnosti, které vyžadují použití specifikace konfigurace Dapr.
  • Všechny poznámky k sajdkáře Dapr, které nejsou uvedené v průvodci povolením Dapr
  • Podpora rozhraní API a komponent: V Azure Container Apps se podporují pouze rozhraní API a komponenty Dapr uvedené jako GA, vrstva 1 nebo vrstva 2.
  • Připomenutí objektu actor: Vyžadovat minReplicas 1+ k zajištění, že připomenutí jsou vždy aktivní a aktivuje se správně.
  • Úlohy: Dapr se u úloh nepodporuje.

Další kroky