Gobernanza de recursos con grupos de aplicaciones
Azure Event Hubs permite controlar las cargas de trabajo de streaming de eventos de las aplicaciones cliente que se conectan a Event Hubs. Puede crear grupos lógicos conocidos como grupos de aplicaciones donde cada grupo es una colección de aplicaciones cliente y, a continuación, aplicar directivas de administración de cuota y acceso para un grupo de aplicaciones (grupo de aplicaciones cliente).
Nota:
El grupo de aplicaciones solo está disponibles actualmente en los niveles premium y dedicado.
Grupos de aplicaciones
Un grupo de aplicaciones es una colección de una o varias aplicaciones cliente que interactúan con el plano de datos de Event Hubs. Cada grupo de aplicaciones tiene como ámbito un único espacio de nombres de Event Hubs o centros de eventos (entidad) dentro de un espacio de nombres y debe usar una condición de identificación única, como el contexto de seguridad, firmas de acceso compartido (SAS) o id. de aplicación de Microsoft Entra ID, de la aplicación cliente.
Event Hubs admite actualmente el uso de contextos de seguridad para crear grupos de aplicaciones. Por lo tanto, cada grupo de aplicaciones debe tener una directiva SAS única o un identificador de aplicación de Microsoft Entra asociados. Si lo prefiere, puede usar el contexto de seguridad en el nivel del centro de eventos para usar un grupo de aplicaciones con un centro de eventos específico dentro de un espacio de nombres.
Los grupos de aplicaciones son entidades lógicas que se crean en el nivel de espacio de nombres. Por lo tanto, las aplicaciones cliente que interactúan con Event Hubs no necesitan tener en cuenta la existencia de un grupo de aplicaciones. Event Hubs puede asociar cualquier aplicación cliente a un grupo de aplicaciones mediante la condición de identificación.
Como se muestra a continuación, puede crear grupos de aplicaciones basados en el contexto de seguridad que usa cada aplicación cliente. Por lo tanto, los grupos de aplicaciones pueden abarcar varias aplicaciones cliente mediante el mismo contexto de seguridad.
Los grupos de aplicaciones no tienen ninguna asociación directa con un grupo de consumidores. En función del identificador del grupo de aplicaciones, como el contexto de seguridad, un grupo de consumidores puede tener uno o varios grupos de aplicaciones asociados a él o un grupo de aplicaciones puede abarcar varios grupos de consumidores.
Estos son los atributos clave de un grupo de aplicaciones:
Parámetro | Descripción |
---|---|
name | Nombre único de un grupo de aplicaciones. |
clientAppGroupIdentifier | Asocie un grupo de aplicaciones con una condición de identificación única (es decir, contexto de seguridad, como la directiva de SAS o el identificador de aplicación de Microsoft Entra). |
directivas | Lista de directivas, como las directivas de limitación que controlan el streaming de eventos entre aplicaciones cliente y el espacio de nombres de Event Hubs |
isEnabled | Determine si las aplicaciones cliente de un grupo de aplicaciones pueden acceder a espacios de nombres de Event Hubs o no. |
Directivas de grupo de aplicaciones
Cada grupo de aplicaciones puede contener cero o más directivas que controlan el acceso al plano de datos de las aplicaciones cliente que forman parte del grupo de aplicaciones. Actualmente, los grupos de aplicaciones admiten directivas de limitación.
Directivas de limitación
Puede tener directivas de limitación especificadas mediante diferentes métricas de entrada y salida. Los grupos de aplicaciones admiten el uso de las siguientes métricas para limitar las cargas de trabajo de entrada o salida de las aplicaciones cliente.
Parámetro | Descripción |
---|---|
IncomingBytes | Rendimiento de escritura en bytes por segundo del publicador. |
OutgoingBytes | Rendimiento de escritura en bytes por segundo del consumidor. |
IncomingMessages | Número de eventos publicados por segundo. |
OutgoingMessages | Número de eventos consumidos por segundo. |
Cuando se aplican directivas para grupos de aplicaciones, la carga de trabajo de la aplicación cliente puede ralentizar o encontrar excepciones de servidor ocupadas.
Directiva de limitación: límites de umbral
En la tabla siguiente se muestran los límites mínimos de umbral que puede establecer para un id. de métrica diferente en la directiva de limitación:
Identificador de la métrica | Límite mínimo |
---|---|
IncomingByte | 1 KB |
OutgoingByte | 1 KB |
IncomingMessage | 1 |
Mensajes salientes | 1 |
Nota:
Los límites establecidos en el valor de umbral de la directiva de limitación tendrán prioridad sobre cualquier valor establecido para las propiedades del tema de Kafka. Por ejemplo, IncomingBytes
tendría mayor prioridad que message.max.bytes
.
Se espera que la limitación del grupo de aplicaciones limite la coherencia por encima de los escenarios de tráfico permitidos (que abarcan varios minutos). Es posible que las ráfagas rápidas en el tráfico durante unos segundos no experimenten la limitación a través de grupos de aplicaciones. Se recomienda observar el rendimiento permitido a lo largo del horizonte de tiempo de unos minutos para validar la limitación.
Compatibilidad con protocolos y códigos de error
El grupo de aplicaciones admite operaciones de limitación que se producen a través de los siguientes protocolos: AMQP, Kafka y HTTP. En la tabla siguiente se proporcionan los códigos de error esperados devueltos por los grupos de aplicaciones:
Protocolo | Operación | Código de error | Mensaje de error |
---|---|---|---|
AMQP | Envío | 50004 | Subcódigo: 50013, el grupo de aplicaciones se limita con el identificador de grupo de aplicaciones y el nombre de directiva |
HTTP | Envío | 503 | Subcódigo = 50013. El grupo de aplicaciones se limita con el id. de grupo de aplicaciones y el nombre de directiva. |
Kafka | Envío | PolicyViolation | Infracción de directiva de inicio de sesión |
Debido a restricciones en el nivel de protocolo, los mensajes de error no se admiten durante la operación de recepción. Cuando los grupos de aplicaciones limitan las operaciones de recepción, experimentarán un consumo lento de mensajes en el lado del consumidor.
Deshabilitación de los grupos de aplicaciones
El grupo de aplicaciones está habilitado de forma predeterminada y significa que todas las aplicaciones cliente pueden acceder al espacio de nombres de Event Hubs para publicar y consumir eventos mediante la adhesión a las directivas de grupo de aplicaciones.
Cuando un grupo de aplicaciones se deshabilita, el cliente podrá conectarse al centro de eventos, pero se producirá un error en la autorización y, a continuación, se cerrará la conexión de cliente. Por lo tanto, verá una gran cantidad de conexiones abiertas y cerradas correctamente, con el mismo número de errores de autorización en los registros de diagnóstico.
Pasos siguientes
Para obtener instrucciones sobre cómo crear y administrar grupos de aplicaciones, consulte Gobernanza de recursos para aplicaciones cliente mediante Azure Portal