Freigeben über


Von Dapr unterstützte Microservice-APIs

Azure Container Apps stellt von Distributed Application Runtime (Dapr) unterstützte APIs bereit, mit denen Sie einfache, portierbare, resiliente und geschützte Microservices schreiben und implementieren können. Dapr fungiert gemeinsam mit Azure Container Apps als Abstraktionsschicht, um eine wartungsarme und skalierbare Plattform bereitzustellen. Azure Container Apps bietet eine Auswahl an vollständig verwalteten Dapr-APIs, -Komponenten und -Features, die speziell auf Microserviceszenarien zugeschnitten sind. Aktivieren und konfigurieren Sie Dapr einfach wie gewohnt in Ihrer Container-App-Umgebung.

Hinweis

Hier finden Sie Updates und Releaseankündigungen für Dapr in Azure Container Apps in GitHub.

So funktionieren die Microservices-APIs in Ihrer Container-App

Konfigurieren Sie die Microservices-APIs für Ihre Container-Apps-Umgebung mit einer Dapr-fähigen Container-App, einer Dapr-Komponente, die für Ihre Lösung konfiguriert ist, und einem Dapr-Sidecar, der die Kommunikation zwischen ihnen aufruft. Das folgende Diagramm veranschaulicht diese Kernkonzepte anhand der Pub/Sub-API.

Diagramm, das die Dapr-Pub/Sub-Komponente und deren Funktionsweise in Container Apps darstellt.

Bezeichnung Dapr-Einstellungen BESCHREIBUNG
1 Container Apps mit Dapr-Aktivierung Dapr wird auf Container-App-Ebene durch das Konfigurieren von eines Satzes von Dapr-Argumenten aktiviert. Diese Werte gelten für alle Revisionen einer bestimmten Container-App, wenn diese im Multirevisionsmodus ausgeführt wird.
2 Dapr Die vollständig verwalteten Dapr-APIs werden jeder Container-App über ein Dapr-Sidecar verfügbar gemacht. Die Dapr-APIs können aus Ihrer Container-App über HTTP oder gRPC aufgerufen werden. Der Dapr-Sidecar wird über den HTTP-Port 3500 und den gRPC-Port 50001 ausgeführt.
3 Dapr-Komponentenkonfiguration Dapr verwendet ein modulares Design, bei dem Funktionalität als Komponente bereitgestellt wird. Dapr-Komponenten können von mehreren Container-Apps gemeinsam genutzt werden. Die im Array „scopes“ angegebenen Dapr-App-Bezeichner legen fest, welche Dapr-fähigen Container-Apps zur Laufzeit eine bestimmte Komponente laden.

Versionsverwaltung

Anstatt einem festen Veröffentlichungszeitplan zu folgen, veröffentlicht Dapr in Azure Container Apps neue Features und Funktionen basierend auf der Priorisierung und Stabilität der Dapr-Binärdateien. Erfahren Sie mehr darüber, wie Dapr-Releases in Azure Container Apps integriert werden.

Die Dapr-Versionen von Azure Container Apps umfassen:

  • Ein semantisches Versionspräfix, wie z. B. 1.13.6, das die Kompatibilität mit den entsprechenden OSS Dapr-Laufzeitversions-APIs und den zugehörigen Tools wie SDKs, CLI usw. angibt.
  • Ein -msft.<number>-Suffix, das die Einbeziehung von Azure-spezifischen Anpassungen für erhöhte Sicherheit und Produktionsbereitschaft angibt.

Das vollständige Versionsformat für Dapr in Azure Container Apps kann ungefähr wie folgt aussehen: 1.13.6-msft.1.

Hinweis

Es kann vorkommen, dass der <number> im Suffix nicht sequenziell inkrementiert wird. Zum Beispiel: Die Version 1.13.6-msft.3 überspringt möglicherweise 1.13.6-msft.2.

Unterstützte Dapr-APIs, -Komponenten und -Tools

Verwaltete APIs

Azure Container Apps bietet allgemein verfügbare verwaltete Dapr-APIs (Baustein-APIs und operative APIs). Diese APIs werden vollständig verwaltet und für die Verwendung in Produktionsumgebungen unterstützt.

Weitere Informationen zur Verwendung von Dapr-Alpha-APIs und -Features finden Sie unter Häufig gestellte Fragen zu Dapr.

Diagramm der Dapr-APIs.

Baustein-APIs

Baustein-API Der Status BESCHREIBUNG
Dienst-zu-Dienst-Aufruf Allgemein verfügbar Entdecken Sie Dienste, und verwenden Sie zuverlässige, direkte Dienst-zu-Dienst-Aufrufe mit automatischer mTLS-Authentifizierung und Verschlüsselung. Informationen zu bekannten Einschränkungen beim Aufrufen des Dapr-Dienstes in Azure Container Apps an.
Zustandsverwaltung Allgemein verfügbar Bietet Zustandsverwaltungsfunktionen für Transaktionen und CRUD-Vorgänge.
Pub/Sub Allgemein verfügbar Ermöglicht die Kommunikation zwischen Container-Apps mit Herausgeber und Abonnent über einen zwischengeschalteten Nachrichtenbroker. Sie können auch deklarative Abonnements für ein Thema erstellen, indem Sie eine JSON-Datei für externe Komponenten verwenden. Erfahren Sie mehr über die deklarative Pub/Sub-API.
Bindungen Allgemein verfügbar Auslösen Ihrer Anwendungen auf Grundlage von Ereignissen
Actors Allgemein verfügbar Dapr-Akteure sind meldungsgesteuerte, Einzelthread-Arbeitseinheiten, die auf schnelle Skalierung ausgelegt sind. Beispielsweise bei Workloads mit vielen Bursts
Geheimnisse Allgemein verfügbar Sie können auf Geheimnisse aus Ihrem Anwendungscode heraus zugreifen oder in Ihren Dapr-Komponenten auf sichere Werte verweisen.
Konfiguration Allgemein verfügbar Rufen Sie Anwendungskonfigurationselemente für unterstützte Konfigurationsspeicher ab und abonnieren Sie sie.

Operative APIs

Operative API Der Status BESCHREIBUNG
Integrität Allgemein verfügbar Integritätsprüfungen, die die Bereitschaft oder Verfügbarkeit von Dapr sowie die Initialisierungsbereitschaft von SDKs überwachen. Die Integritäts-API ist nur für HTTP verfügbar.
Dapr Sidecar-Integritätsprüfungen werden automatisch konfiguriert, wenn Dapr in Ihrer Container-App aktiviert ist.
Metadaten Allgemein verfügbar Gibt Informationen zum Sidecar zurück, die die Erkennbarkeit der Laufzeit ermöglichen.

Kompatible SDKs

Die neuesten Client-SDK-Pakete von Dapr sind mit Azure Container Apps kompatibel. Sie können Dapr-SDKs mit jeder beliebigen unterstützten GA Dapr v1.12 Runtime-API verwenden.

Hinweis

Derzeit sind die Dapr-Servererweiterungen, Actor- und Workflow-SDK-Pakete nicht mit Azure Container Apps kompatibel. Erfahren Sie mehr über alle Dapr SDK-Pakete.

Dapr-Komponenten

Komponenten der Ebene 1 und Ebene 2 im Vergleich

Ein Teil der Dapr-Komponenten wird unterstützt. Innerhalb dieser Teilmenge sind Dapr-Komponenten in zwei Supportkategorien unterteilt: Ebene 1 oder Ebene 2.

  • Komponenten der Ebene 1: Stabile Komponenten, die in kritischen Szenarien (Sicherheitsproblem oder schwerwiegende Regression) sofort untersucht werden. Andernfalls arbeitet Microsoft mit dem Open Source-Projekt zusammen, um Probleme in einem Hotfix oder im nächsten regulären Release zu beheben.
  • Komponenten der Ebene 2: Komponenten, die mit niedrigerer Priorität untersucht werden, da sie nicht stabil sind oder von einem Drittanbieter bereitgestellt werden.
Komponenten der Ebene 1
Programmierschnittstelle (API) Komponente type
Zustandsverwaltung Azure Cosmos DB (ein Microsoft-Datenbankdienst)
Azure Blob Storage v1
Azure Tabellenspeicher
Microsoft SQL Server
state.azure.cosmosdb
state.azure.blobstorage
state.azure.tablestorage
state.sqlserver
Veröffentlichen & Abonnieren Azure Service Bus-Warteschlangen
Azure Service Bus-Themen
Azure Event Hubs
pubsub.azure.servicebus.queues
pubsub.azure.servicebus.topics
pubsub.azure.eventhubs
Verbindlich Azure Storage-Warteschlangen
Azure Service Bus-Warteschlangen
Azure Blob Storage (Speicherdienst von Azure für unstrukturierte Daten)
Azure Event Hubs
bindings.azure.storagequeues
bindings.azure.servicebusqueues
bindings.azure.blobstorage
bindings.azure.eventhubs
Geheimnisverwaltung Azure Key Vault (ein Dienst zur sicheren Verwaltung kryptografischer Schlüssel) secretstores.azure.keyvault
Komponenten der Ebene 2
Programmierschnittstelle (API) Komponente type
Zustandsverwaltung PostgreSQL
MySQL und MariaDB
Redis
state.postgresql
state.mysql
state.redis
Veröffentlichen & Abonnieren Apache Kafka
Streams in Redis
pubsub.kafka
pubsub.redis
Verbindlich Azure-Ereignisraster
Azure Cosmos DB (ein Microsoft-Datenbankdienst)
Apache Kafka
PostgreSQL
Redis
Cron
bindings.azure.eventgrid
bindings.azure.cosmosdb
bindings.kafka
bindings.postgresql
bindings.redis
bindings.cron
Konfiguration PostgreSQL
Redis
configuration.postgresql
configuration.redis

Erfahren Sie mehr über die Verwendung der unterstützten Dapr-Komponenten in Azure Container Apps.

Tools

Azure Container Apps stellt die Kompatibilität mit Dapr-Open-Source-Tools wie SDKs und der CLI sicher.

Einschränkungen

  • Dapr-Konfigurationsspezifikation: Alle Funktionen, die die Verwendung der Dapr-Konfigurationsspezifikation erfordern.
  • Alle Dapr-Sidecar-Anmerkungen, die nicht in der Anleitung zur Aktierung von Dapr aufgelistet sind
  • Unterstützte APIs und Komponenten: Nur die Dapr-APIs und -Komponenten, die in diesem Artikel als GA, Tier 1 oder Tier 2 aufgeführt werden, werden in Azure Container Apps unterstützt.
  • Erinnerungen für Actors: Für minReplicas muss mindestens der Wert 1 verlangt werden, um sicherzustellen, dass Erinnerungen stets aktiv sind und ordnungsgemäß ausgelöst werden.
  • Aufträge: Dapr wird für Aufträge nicht unterstützt.

Nächste Schritte