SuperAPI AI 工具集

azure-eventhub-java

数据与分析

查看项目

更新于 10-16 07:26

技能介绍

用途:使用 Azure Event Hubs SDK for Java 构建实时流式应用,实现事件流处理与高吞吐数据摄取。

安装:以 Maven 依赖引入,group 为 com.azure,artifactId 为 azure-messaging-eventhubs,示例版本为 5.19.0。

主要能力:

  1. 客户端创建:可用连接字符串(connectionString)创建 EventHubProducerClient(可在连接字符串中带 EntityPath)与 EventHubConsumerClient;也可用 DefaultAzureCredentialBuilder 的 DefaultAzureCredential,配合 fullyQualifiedNamespace 与 eventHubName 创建。
  2. 异步客户端:buildAsyncProducerClient、buildAsyncConsumerClient 创建 EventHubProducerAsyncClient 与 EventHubConsumerAsyncClient。
  3. 发送:单条发送使用 EventData 与 producer.send;批量发送用 createBatch 生成 EventDataBatch,tryAdd 返回 false 表示批次已满,可发送后新建批次继续添加,最后发送剩余事件。
  4. 分区控制:CreateBatchOptions 可 setPartitionId 指定分区,或 setPartitionKey 按分区键路由。
  5. 事件属性:通过 event.getProperties() 添加自定义键值,如 orderId、customerId、priority。
  6. 接收:consumer.receiveFromPartition 传入 partitionId、maxEvents、EventPosition.earliest() 与超时时间,可读取 body、sequenceNumber、offset。
  7. 生产级处理:使用 EventProcessorClient 与 BlobCheckpointStore 等做检查点管理。

适用场景:事件流实时处理、高吞吐数据摄取、按分区有序消费、需要异步或生产级消费端管理的 Java 应用。

限制:资料仅提供部分代码片段,完整实现细节、认证配置要求、配额、计费、平台与版本兼容性暂未提供。