Zarządzanie zasobami przy użyciu grup aplikacji
Usługa Azure Event Hubs umożliwia zarządzanie obciążeniami przesyłania strumieniowego zdarzeń aplikacji klienckich łączących się z usługą Event Hubs. Można tworzyć grupy logiczne nazywane grupami aplikacji, w których każda grupa jest kolekcją aplikacji klienckich, a następnie stosować zasady zarządzania przydziałami i dostępem dla grupy aplikacji (grupy aplikacji klienckich).
Uwaga
Grupy aplikacji są dostępne tylko w warstwach Premium i dedykowanych .
Grupy aplikacji
Grupa aplikacji to kolekcja co najmniej jednej aplikacji klienckiej, która współdziała z płaszczyzną danych usługi Event Hubs. Każda grupa aplikacji może być ograniczona do jednej przestrzeni nazw usługi Event Hubs lub centrów zdarzeń (jednostki) w przestrzeni nazw i powinna używać unikatowo identyfikującego warunku, takiego jak kontekst zabezpieczeń — sygnatury dostępu współdzielonego (SAS) lub identyfikator aplikacji Microsoft Entra — aplikacji klienckiej.
Usługa Event Hubs obecnie obsługuje używanie kontekstów zabezpieczeń do tworzenia grup aplikacji. W związku z tym każda grupa aplikacji musi mieć skojarzone unikatowe zasady sygnatury dostępu współdzielonego lub identyfikator aplikacji Firmy Microsoft Entra. Jeśli jest to preferowane, możesz użyć kontekstu zabezpieczeń na poziomie centrum zdarzeń, aby użyć grupy aplikacji z określonym centrum zdarzeń w przestrzeni nazw.
Grupy aplikacji to jednostki logiczne tworzone na poziomie przestrzeni nazw. W związku z tym aplikacje klienckie wchodzące w interakcje z centrami zdarzeń nie muszą być świadomi istnienia grupy aplikacji. Usługa Event Hubs może skojarzyć dowolną aplikację klienczą z grupą aplikacji przy użyciu warunku identyfikacji.
Jak pokazano poniżej, można tworzyć grupy aplikacji na podstawie kontekstu zabezpieczeń używanego przez każdą aplikację kliencka. W związku z tym grupy aplikacji mogą obejmować wiele aplikacji klienckich przy użyciu tego samego kontekstu zabezpieczeń.
Grupy aplikacji nie mają bezpośredniego skojarzenia z grupą odbiorców. W zależności od identyfikatora grupy aplikacji, takiego jak kontekst zabezpieczeń, jedna grupa odbiorców może mieć skojarzoną z nią co najmniej jedną grupę aplikacji lub grupę aplikacji może obejmować wiele grup odbiorców.
Są to kluczowe atrybuty grupy aplikacji:
Parametr | opis |
---|---|
name | Unikatowa nazwa grupy aplikacji. |
clientAppGroupIdentifier | Skojarz grupę aplikacji z unikatowym warunkiem identyfikacji (tj. kontekst zabezpieczeń, taki jak zasady sygnatury dostępu współdzielonego lub identyfikator aplikacji Firmy Microsoft Entra). |
policies | Lista zasad, takich jak zasady ograniczania przepustowości kontrolujące przesyłanie strumieniowe zdarzeń między aplikacjami klienckimi i przestrzenią nazw usługi Event Hubs |
Isenabled | Ustal, czy aplikacje klienckie grupy aplikacji mogą uzyskiwać dostęp do przestrzeni nazw usługi Event Hubs, czy nie. |
Zasady grupy aplikacji
Każda grupa aplikacji może zawierać zero lub więcej zasad kontrolujących dostęp do płaszczyzny danych aplikacji klienckich należących do grupy aplikacji. Grupy aplikacji obsługują obecnie zasady ograniczania przepustowości.
Zasady ograniczania przepustowości
Można określić zasady ograniczania przepustowości przy użyciu różnych metryk ruchu przychodzącego i wychodzącego. Grupy aplikacji obsługują używanie następujących metryk do ograniczania obciążeń przychodzących lub wychodzących aplikacji klienckich.
Parametr | Opis |
---|---|
Bajty przychodzące | Przepływność programu Publisher w bajtach na sekundę. |
Bajty wychodzące | Przepływność odbiorcy w bajtach na sekundę. |
IncomingMessages | Liczba zdarzeń publikowanych na sekundę. |
Wychodzące wiadomości | Liczba zdarzeń zużywanych na sekundę. |
Po zastosowaniu zasad dla grup aplikacji obciążenie aplikacji klienckiej może spowolnić lub napotkać wyjątki zajęte przez serwer.
Zasady ograniczania przepustowości — limity progowe
W poniższej tabeli przedstawiono minimalne limity progowe, które można ustawić dla różnych identyfikatorów metryk w zasadach ograniczania przepustowości:
Identyfikator metryki | Dolny limit |
---|---|
Liczba bajtów przychodzących | 1 KB |
Wychodzące bajty | 1 KB |
IncomingMessage | 1 |
Wiadomość wychodząca | 1 |
Uwaga
Limity ustawione dla wartości progowej zasad ograniczania mają pierwszeństwo przed wszelkimi wartościami ustawionymi dla właściwości tematu platformy Kafka. Na przykład IncomingBytes
ma wyższy priorytet niż message.max.bytes
.
Oczekuje się, że ograniczanie przepustowości grupy aplikacji będzie ograniczać spójnie wyższe niż dozwolone scenariusze ruchu (obejmujące kilka minut). Szybkie wzrosty ruchu przez kilka sekund mogą nie występować w przypadku ograniczania przepustowości za pośrednictwem grup aplikacji. Sprawdzenie dozwolonej przepływności w horyzoncie czasu kilku minut jest zalecane w celu zweryfikowania ograniczania przepustowości.
Obsługa protokołów i kody błędów
Grupa aplikacji obsługuje operacje ograniczania przepustowości wykonywane za pośrednictwem następujących protokołów — AMQP, Kafka i HTTP. Poniższa tabela zawiera oczekiwane kody błędów zwracane przez grupy aplikacji:
Protokół | Operacja | Kod błędu | Komunikat o błędzie |
---|---|---|---|
AMQP | Wysyłanie | 50004 | SubCode:50013, grupa aplikacji jest ograniczana z identyfikatorem grupy aplikacji i nazwą zasad |
HTTP | Wysyłanie | 503 | Podkodowanie: 50013. Grupa aplikacji jest ograniczana przy użyciu identyfikatora grupy aplikacji i nazwy zasad |
Kafka | Wysyłanie | PolicyViolation | Broker: naruszenie zasad |
Ze względu na ograniczenia na poziomie protokołu komunikaty o błędach nie są obsługiwane podczas operacji odbierania. Gdy grupy aplikacji są ograniczane w operacjach odbierania, występuje powolne zużycie komunikatów po stronie użytkownika.
Wyłączanie grup aplikacji
Grupa aplikacji jest domyślnie włączona i oznacza to, że wszystkie aplikacje klienckie mogą uzyskiwać dostęp do przestrzeni nazw usługi Event Hubs na potrzeby publikowania i używania zdarzeń przez przestrzeganie zasad grupy aplikacji.
Gdy grupa aplikacji jest wyłączona, klient nadal będzie mógł nawiązać połączenie z centrum zdarzeń, ale autoryzacja zakończy się niepowodzeniem, a następnie połączenie klienta zostanie zamknięte. W związku z tym zobaczysz wiele pomyślnych otwartych i zamkniętych połączeń z taką samą liczbą błędów autoryzacji w dziennikach diagnostycznych.
Następne kroki
Aby uzyskać instrukcje dotyczące tworzenia grup aplikacji i zarządzania nimi, zobacz Zarządzanie zasobami dla aplikacji klienckich przy użyciu witryny Azure Portal