工作队列 注意事项:一个消息只能被处理一次,不可以处理多次 消费者在接收到消息并且处理该消息之后,告诉rabbitmq它已经处理了,rabbitmq可以把该消息删除了。倘若mq没有收到应答,mq会将消息转发给其他消费者 自动应答: 需要在高吞吐和数据传输安全性方面做权衡 没有对消息数据进行限制 仅适合在消费者可以高效并以某种速率能够处理这些信息的情况下使用。 手动应答: 应答方式: 自动应答在消息接收到以后即做出应答,但若接收以后还需其他操作,对应答无影响。所以当消费者接收到消息,但是在消息处理完之前就已经挂掉了,但是由于自动应答,使得mq会认为已经处理完,并删除该消息。 手动应答可以写在消息处理的最后,即使出现异常,也能防止mq删除消息。 防止RabbitMQ崩溃导致的消息丢失,我们需要将队列和消息都标记为持久化 队列持久化 重启队列不会消失,但是消息可能会消失 消息持久化 channel.basicPublish("", QUEUE_NAME, MessageProperties.PERSISTENT_TEXT_PLAIN,...