天天看点

【Azure 事件中心】在Azure Function App中消费Event Hub数据,时常出现EventReceiveError

问题描述

在Azure Function App中消费Event Hub数据,时常出现EventReceiveError:New receiver 'P3-00122a562-4fa4-7f3f-ad5e-6241adb34b15' with higher epoch of '0' is created hence current receiver 'P3-xxxxxxxx-t318-4gf5-xxxx-xxxxxxxxxxxx' with epoch '0' is getting disconnected. If you are recreating the receiver, make sure a higher epoch is used.

问题解答

这个属于正常错误提示,消费者程序(Azure Function)会为每个消息分区创建单独的消费线程,消费线程跟Event Hub的分区是一对一的关系。分区将在EPH实例之间移动,当有新的接收者程序进来时,分区会进行再分配,再分配的过程中,会出现类似上面的提示信息。

当Azure Function 的实例大于分区的时候,某一些实例是无法在任何分区上获得租约(lease) 的,这样会导致,总会有一个EPH准备好迅速抢到丢失的租约,以保持 Function App的运行,也就会看到上面的信息。

参考资料

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

继续阅读