Soru

Zorluk: Çok zorImplement Azure Event Hubs Solutions

An organization is deploying a globally distributed .NET microservice that consumes telemetry using the Azure.Messaging.EventHubs SDK. The application uses EventProcessorClient with Azure Blob Storage as the checkpoint store. You are configuring authentication and concurrency management for the processor instances. Which TWO of the following configurations or architectural decisions are required for the EventProcessorClient to function correctly and scale dynamically?

  1. The target Blob container used for checkpointing must be created in the Azure Storage account prior to starting the EventProcessorClient execution.Cevap
  2. The security principal used by the consumer application must be assigned the 'Storage Blob Data Contributor' role on the Azure Storage container.Cevap
  3. C
    To prevent partition ownership conflicts, you must programmatically acquire an exclusive, active write lease on the checkpoint blobs and supply this Lease ID to the client options before starting the processor.
  4. D
    You must configure the application with a System-Assigned Managed Identity to share the credential token across multiple distinct processor instances running in separate App Services.

Cevap

The correct configurations are creating the target Blob container prior to starting execution and assigning the 'Storage Blob Data Contributor' role on the storage container to the security principal of the consumer application.
The checkpoint store container must exist beforehand because the EventProcessorClient will throw a 404 (ContainerNotFound) error instead of auto-creating it. Additionally, the processor requires write access to create and update blobs tracking partition ownership and checkpoint offsets, which is granted via the 'Storage Blob Data Contributor' RBAC role.

Adım Adım Çözüm

1
Ensure the storage container for checkpointing is provisioned.
The EventProcessorClient will find the container and avoid throwing a ContainerNotFound exception.
The SDK does not provision the storage container automatically; it only creates blobs within it.
2
Assign the appropriate Azure RBAC role to the application's managed identity.
The identity receives read/write access to checkpoint blobs.
Storage Blob Data Contributor permissions are required for metadata updates and blob creation.
3
Allow the client to manage partition leases natively using metadata.
Dynamic load balancing succeeds without lease locking conflicts.
Manually leasing checkpoint blobs blocks the processor client's internal lease management.

Anahtar Kavram

Configuring EventProcessorClient checkpointing, permissions, and partition management in Azure Event Hubs.
Tahmini Süre:3m 0s
Bu soruyu puanla