- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 EventProcessorHost 在 JAVA 中使用来自 eventhub 的消息。按照给出的步骤 here1和 here2但是当我运行代码时,出现以下错误..
Registering host named <name>
Failure while registering: java.util.concurrent.ExecutionException: com.microsoft.azure.storage.StorageException: The client could not finish the operation within specified maximum execution timeout.
Press enter to stop
更多详细信息:
按照博客中所述创建了新的存储帐户,并创建了 blob。
EventProcessor 类和 ErrorNotificationHandler 类与 Microsoft 文档中提到的完全相同。
调用寄存器的代码如下...
final String consumerGroupName = "test";
final String namespaceName = "--namespace--";
final String eventHubName = "--eventhub name --";
final String sasKeyName = "--saskey name--";
final String sasKey = "--sas-key";
final String containerName = "--container name --";
final String storageAccountName = "--storage account name --";
final String storageAccountKey = "--storage -- account key--";
final String connectionString = "--eventhub connection string copied from azure portal --";
final String storageConString = "--storage connection string copied from azure portal --";
EventProcessorHost host = new EventProcessorHost(
namespaceName, // Also tried with full name <namespace name>.servicebus.windows.net
eventHubName,
consumerGroupName,
connectionString,
storageConString,
containerName
// "<blobprefix>" Also tried with blob prefix
);
System.out.println("Registering host named " + host.getHostName());
EventProcessorOptions options = new EventProcessorOptions();
options.setReceiveTimeOut(Duration.ofMinutes(12 L));
options.setExceptionNotification(new ErrorNotificationHandler());
try {
host.registerEventProcessor(EventProcessor.class, options).get(15, TimeUnit.MINUTES);
} catch (Exception e) {
System.out.print("Failure while registering: ");
if (e instanceof ExecutionException) {
Throwable inner = e.getCause();
System.out.println(inner.toString());
} else {
System.out.println(e.toString());
}
}
注意:博客已弃用 EventProcessorHost 的构造函数。
在线搜索错误,我发现的是增加存储超时,但不确定如何证明 EventProcessorHost 中存储的特定超时。任何帮助表示赞赏。
最佳答案
我关注了official document从事件中心接收消息,它对我来说效果很好。
消息存储到我配置的 Azure Blob 存储中。
根据您的描述,即使您在EventProcessorOptions中将ReceiveTimeOut设置为12分钟,仍然出现超时异常。根据我的经验,即使是一条一条的收到消息,也不可能需要12分钟那么长的时间。而我们的应用程序中通常不可能将超时设置得这么长。所以我认为错误不再来自SDK级别。可能是网络环境问题。
据我所知,Event Hub消息发送客户端使用HTTP协议(protocol)
,不会被防火墙阻止。 EPH消息接收客户端使用AMQP协议(protocol),该协议(protocol)本质上是TCP协议(protocol)
,并且会受到代理服务器设置或防火墙的限制。我假设您的 Eph 客户端没有与事件中心的连接。
我不知道您的实际网络环境,建议您检查代理设置或防火墙白名单,以排查网络环境问题。
如有任何疑问,请告诉我。
关于java - 注册EventProcessorHost时失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47779279/
我正在使用 EventProcessorHost 读取 Eventhub 数据,但出现以下错误。 New receiver with higher epoch of '798393595' is cr
我希望获得有关如何将 EventProcessorHost 与辅助角色一起使用的指导。基本上,我希望让 EventProcessorHost 并行处理分区,我想知道应该在辅助角色中放置此类代码,以及是
我希望获得有关如何将 EventProcessorHost 与辅助角色一起使用的指导。基本上,我希望让 EventProcessorHost 并行处理分区,我想知道应该在辅助角色中放置此类代码,以及是
我对使用 EventProcessorHost 和 IEventProcessor 非常陌生,我正在尝试找出如何从 EventProcessorClass 中获取数据。如果我只想将新消息记录到控制台,
在我正在从事的项目中,我不想使用 Azure 存储来管理我的偏移量和检查点,而是计划使用数据库方法来存储它们。我正在使用 EventProcessor 从事件中心读取事件,并且我知道我可以创建自己的
在我正在从事的项目中,我不想使用 Azure 存储来管理我的偏移量和检查点,而是计划使用数据库方法来存储它们。我正在使用 EventProcessor 从事件中心读取事件,并且我知道我可以创建自己的
我们使用 EventProcessorHost 从 Azure EventHub 接收事件。我一直未能成功尝试将其配置(通过 EventProcessorOptions.InitialOffsetPr
在使用 EventProcessor 类监听 EventHub 上的事件的 webjobs 上启用应用程序洞察后,我们看到它不断尝试访问配置的 blob 存储帐户中的一组不存在的队列。我们尚未在此帐户
我正在使用 azure 事件中心的 EventProcessorHost 来处理批量事件。由于某种原因,当线程计数达到最大值时,我必须通过不写入检查点来跳过事件,但我必须在线程计数下降后检索这些跳过的
我正在使用 azure 事件中心的 EventProcessorHost 来处理批量事件。由于某种原因,当线程计数达到最大值时,我必须通过不写入检查点来跳过事件,但我必须在线程计数下降后检索这些跳过的
我正在使用 Microsoft.Azure.EventHubs.Processor 库中的 EventProcessorHost() 方法,似乎除了事件中心库之外,我还需要指定存储连接字符串和租赁容器
我尝试通过带有 EventHubReceiver 的控制台应用程序 1 和带有 EventProcessorHost 的另一个应用程序从 eventhub 读取事件,我注意到 EventProcess
我正在为 Azure EventHub 编写一个工作程序,我希望在 EventProcessorHost 之上进行构建;但是,我在 general 中找不到一些可能相关的详细信息。 documenta
我正在尝试运行从 EventHub 读取消息的示例,但出现以下错误: 示例网址:https://github.com/Azure/azure-event-hubs/tree/master/sample
我正在尝试运行从 EventHub 读取消息的示例,但出现以下错误: 示例网址:https://github.com/Azure/azure-event-hubs/tree/master/sample
我调用了一个 REST 服务,它会分发短期(大约 20 分钟)的 SAS token ,以便从 Azure 事件中心读取数据。我想避免这样的解决方案:当 token 过期时,我必须拆除所有监听器并每
我调用了一个 REST 服务,它会分发短期(大约 20 分钟)的 SAS token ,以便从 Azure 事件中心读取数据。我想避免这样的解决方案:当 token 过期时,我必须拆除所有监听器并每
该应用程序使用 .NET 4.6.1 和 Microsoft.Azure.ServiceBus.EventProcessorHost nuget package v2.0.2 ,以及它的依赖项 Win
我有一个 eventhub,我正在向它发送数据。现在我需要接收该数据。所以我按照 eventhub 页面中的教程进行操作 https://azure.microsoft.com/en-us/docum
我是一名优秀的程序员,十分优秀!