Udostępnij za pośrednictwem


Interfejsy API mikrousług obsługiwane przez język Dapr

Usługa Azure Container Apps udostępnia interfejsy API obsługiwane przez rozproszone środowisko uruchomieniowe aplikacji (Dapr), które ułatwiają pisanie i implementowanie prostych, przenośnych, odpornych i zabezpieczonych mikrousług. Język Dapr współpracuje z usługą Azure Container Apps jako warstwą abstrakcji, aby zapewnić platformę o niskiej konserwacji i skalowalności. Usługa Azure Container Apps oferuje wybór w pełni zarządzanych interfejsów API, składników i funkcji języka Dapr przeznaczonych specjalnie dla scenariuszy mikrousług. Wystarczy włączyć i skonfigurować środowisko Dapr jak zwykle w środowisku aplikacji kontenera.

Jak interfejsy API mikrousług działają z aplikacją kontenera

Konfigurowanie interfejsów API mikrousług dla środowiska aplikacji kontenera za pomocą aplikacji kontenera z obsługą języka Dapr, składnika języka Dapr skonfigurowanego dla rozwiązania oraz wywoływania komunikacji między nimi przez przyczepkę dapr. Na poniższym diagramie przedstawiono te podstawowe pojęcia, korzystając z pubu/podrzędnego interfejsu API jako przykładu.

Diagram przedstawiający usługę Dapr pub/sub i sposób jej działania w usłudze Container Apps.

Etykieta Ustawienia języka Dapr opis
1 Usługa Container Apps z włączoną obsługą języka Dapr Język Dapr jest włączony na poziomie aplikacji kontenera, konfigurując zestaw argumentów języka Dapr. Te wartości dotyczą wszystkich poprawek danej aplikacji kontenera podczas uruchamiania w trybie wielu poprawek.
2 Dapr W pełni zarządzane interfejsy API języka Dapr są widoczne dla każdej aplikacji kontenera za pośrednictwem przyczepki dapr. Interfejsy API języka Dapr można wywołać z aplikacji kontenera za pośrednictwem protokołu HTTP lub gRPC. Przyczepka dapr działa na porcie HTTP 3500 i gRPC 50001.
3 Konfiguracja składnika języka Dapr Język Dapr używa modułowego projektu, w którym funkcjonalność jest dostarczana jako składnik. Składniki języka Dapr można udostępniać w wielu aplikacjach kontenerów. Identyfikatory aplikacji dapr podane w tablicy zakresów określają, które aplikacje kontenerów z obsługą języka dapr ładują dany składnik w czasie wykonywania.

Obsługiwane interfejsy API języka Dapr, składniki i narzędzia

Zarządzane interfejsy API

Usługa Azure Container Apps oferuje zarządzane ogólnie dostępne interfejsy API języka Dapr (interfejsy API bloków konstrukcyjnych i operacyjne interfejsy API). Te interfejsy API są w pełni zarządzane i obsługiwane do użycia w środowiskach produkcyjnych.

Aby dowiedzieć się więcej na temat używania interfejsów API i funkcji języka Dapr, zobacz Dapr FAQ (Często zadawane pytania dotyczące języka Dapr).

Diagram przedstawiający interfejsy API języka Dapr.

Interfejsy API bloków konstrukcyjnych

Interfejs API bloku konstrukcyjnego Stan opis
Wywołanie typu service-to-service Ogólna dostępność Odnajdywanie usług i wykonywanie niezawodnych, bezpośrednich wywołań typu service-to-service za pomocą automatycznego uwierzytelniania i szyfrowania mTLS. Zobacz znane ograniczenia wywołania usługi Dapr w usłudze Azure Container Apps.
Zarządzanie stanem Ogólna dostępność Zapewnia funkcje zarządzania stanem dla transakcji i operacji CRUD.
Pub/sub Ogólna dostępność Umożliwia aplikacjom kontenera wydawcy i subskrybenta nawiązywanie połączeń za pośrednictwem pośredniczącego brokera komunikatów. Możesz również utworzyć deklaratywne subskrypcje do tematu przy użyciu pliku JSON składnika zewnętrznego. Dowiedz się więcej na temat deklaratywnego interfejsu API pub/sub.
Powiązania Ogólna dostępność Wyzwalanie aplikacji na podstawie zdarzeń
Aktorów Ogólna dostępność Aktorzy języka Dapr są jednostkami pracy opartymi na komunikatach, jednowątkowymi, zaprojektowanymi do szybkiego skalowania. Na przykład w sytuacjach z dużym obciążeniem.
Wpisy tajne Ogólna dostępność Uzyskaj dostęp do wpisów tajnych z kodu aplikacji lub odwołuj się do bezpiecznych wartości w składnikach języka Dapr.
Konfiguracja Ogólna dostępność Pobieranie i subskrybowanie elementów konfiguracji aplikacji dla obsługiwanych magazynów konfiguracji.

Operacyjne interfejsy API

Operacyjny interfejs API Stan opis
Zdrowie Ogólna dostępność Sondy kontroli kondycji, które monitorują gotowość lub dostępność zestawów SDK języka Dapr i inicjowania. Interfejs API kondycji jest dostępny tylko dla protokołu HTTP.
Metadane Ogólna dostępność Zwraca informacje o przyczepce, co pozwala na odnajdywanie środowiska uruchomieniowego.

Zgodne zestawy SDK

Najnowsze pakiety zestawu SDK klienta dapr są zgodne z usługą Azure Container Apps. Możesz użyć dowolnego z obsługiwanych interfejsów API języka Dapr z następującymi wersjami zestawu SDK klienta języka Dapr:

Język Wersja zestawu 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

Uwaga

Obecnie rozszerzenia serwera Dapr, aktor i pakiety zestawu SDK przepływu pracy nie są zgodne z usługą Azure Container Apps. Dowiedz się więcej o wszystkich pakietach zestawu DAPR SDK.

Składniki języka Dapr

Składniki warstwy 1 i warstwy 2

Obsługiwany jest podzbiór składników języka Dapr. W tym podzestawie składniki języka Dapr są podzielone na dwie kategorie pomocy technicznej: Warstwa 1 lub Warstwa 2.

  • Składniki warstwy 1: stabilne składniki, które otrzymują natychmiastowe badanie w scenariuszach krytycznych (zabezpieczeń lub poważnych regresji). W przeciwnym razie firma Microsoft współpracuje z oprogramowaniem open source w celu rozwiązania problemu w poprawce lub następnej regularnej wersji.
  • Składniki warstwy 2: składniki badane w mniejszym prioryficie, ponieważ nie są w stanie stabilnym lub są u dostawcy innej firmy.
Składniki warstwy 1
interfejs API Składnik Typ
Zarządzanie stanem Azure Cosmos DB
Azure Blob Storage v1
Azure Table Storage
Microsoft SQL Server
state.azure.cosmosdb
state.azure.blobstorage
state.azure.tablestorage
state.sqlserver
Publikowanie i subskrybowanie Kolejki usługi Azure Service Bus
Tematy usługi Azure Service Bus
Azure Event Hubs
pubsub.azure.servicebus.queues
pubsub.azure.servicebus.topics
pubsub.azure.eventhubs
Wiązanie Kolejki usługi Azure Storage
Kolejki usługi Azure Service Bus
Azure Blob Storage
Azure Event Hubs
bindings.azure.storagequeues
bindings.azure.servicebusqueues
bindings.azure.blobstorage
bindings.azure.eventhubs
Zarządzanie wpisami tajnymi Azure Key Vault secretstores.azure.keyvault
Składniki warstwy 2
interfejs API Składnik Typ
Zarządzanie stanem PostgreSQL
MySQL & MariaDB
Redis
state.postgresql
state.mysql
state.redis
Publikowanie i subskrybowanie Apache Kafka
Strumienie redis
pubsub.kafka
pubsub.redis
Wiązanie 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
Konfigurowanie PostgreSQL
Redis
configuration.postgresql
configuration.redis

Dowiedz się więcej o sposobie używania obsługiwanych składników języka Dapr w usłudze Azure Container Apps.

Narzędzia

Usługa Azure Container Apps zapewnia zgodność z narzędziami typu open source dapr, takimi jak zestawy SDK i interfejs wiersza polecenia.

Ograniczenia

  • Specyfikacja konfiguracji języka Dapr: wszelkie możliwości wymagające użycia specyfikacji konfiguracji języka Dapr.
  • Wszelkie adnotacje przyczepki dapr, które nie zostały wymienione w przewodniku włączania języka Dapr
  • Interfejsy API i składniki obsługują: w usłudze Azure Container Apps obsługiwane są tylko interfejsy API i składniki języka Dapr wymienione jako ogólna dostępność, warstwa 1 lub warstwa 2 w tym artykule .
  • Przypomnienia aktora: Wymagaj minReplicas z 1+ w celu zapewnienia, że przypomnienia są zawsze aktywne i są prawidłowo uruchamiane.
  • Zadania: Język Dapr nie jest obsługiwany w przypadku zadań.

Następne kroki