用途:面向 Azure Event Hubs 的 Python 流式处理,覆盖高吞吐事件接入、生产者、消费者与检查点。
主要能力:EventHubProducerClient 发送事件,EventHubConsumerClient 接收事件,BlobCheckpointStore 跟踪消费进度;支持批量发送、按 partition_id 或 partition_key 指定分区、读取事件属性(sequence_number、offset、enqueued_time、partition_key 等)以及获取 Event Hub 与分区信息。
安装:pip install azure-eventhub azure-identity;使用 Blob 检查点需 pip install azure-eventhub-checkpointstoreblob-aio。
环境变量:EVENT_HUB_FULLY_QUALIFIED_NAMESPACE、EVENT_HUB_NAME 为所有认证方式必需;STORAGE_ACCOUNT_URL、CHECKPOINT_CONTAINER 用于检查点存储;生产环境使用 DefaultAzureCredential 时需设置 AZURE_TOKEN_CREDENTIALS=prod。
使用方式:优先使用 DefaultAzureCredential,本地开发可直接工作,Azure 上支持托管标识与工作负载标识;避免连接字符串和密钥。所有客户端用上下文管理器包裹(同步 with,异步 async with),异步凭据同样使用 async with。同步与异步客户端不可混用。发送时用 create_batch 处理大小限制,捕获 ValueError 后发送并新建批次。生产环境建议配置检查点存储,高吞吐场景使用异步客户端,需要分区内有序时使用 partition key。
限制:资料未提供具体性能指标、配额、价格或平台支持范围;示例中的命名空间、Event Hub 名称、存储账户等需替换为实际值。