Rabbitmq 连接重置导致消息被分派两次
Rabbitmq connection reset is causing the message to be dispatched twice
我有一个批处理作业,该作业被分成多个小消息并推送到队列中,多个监听队列的工作人员将拾取并处理这些消息。
当如下所示发生连接重置时,即使第一个工作人员之前已经选择了它并且仍在处理时,另一个工作人员实例也选择了相同的消息。
ERROR org.springframework.amqp.rabbit.connection.CachingConnectionFactory$DefaultChannelCloseLogger:Channel shutdown: connection error
com.rabbitmq.client.impl.ForgivingExceptionHandler:An unexpected connection driver error occured (Exception message: Connection reset)
这只发生在特定作业的一条消息中,并且连接重置时间与该特定消息的重新发送匹配。
我想知道这是否是作为 rabbitmq autoRecovery 一部分的有效功能并且不可避免?
正确;任何未确认的消息都将在连接重置后重新排队并重新传送。
我有一个批处理作业,该作业被分成多个小消息并推送到队列中,多个监听队列的工作人员将拾取并处理这些消息。
当如下所示发生连接重置时,即使第一个工作人员之前已经选择了它并且仍在处理时,另一个工作人员实例也选择了相同的消息。
ERROR org.springframework.amqp.rabbit.connection.CachingConnectionFactory$DefaultChannelCloseLogger:Channel shutdown: connection error
com.rabbitmq.client.impl.ForgivingExceptionHandler:An unexpected connection driver error occured (Exception message: Connection reset)
这只发生在特定作业的一条消息中,并且连接重置时间与该特定消息的重新发送匹配。
我想知道这是否是作为 rabbitmq autoRecovery 一部分的有效功能并且不可避免?
正确;任何未确认的消息都将在连接重置后重新排队并重新传送。