ActiveMQ delivery mode 持久化投递 vs
2022-01-17 本文已影响0人
偷油考拉
What is the difference between persistent and non-persistent delivery? (apache.org)
persistent vs non-persistent delivery
持久化投递 vs 非持久化投递
ActiveMQ支持persistent
和non-persistent
递送模式。根据JMS规范,默认模式是persistent
。持久化标记(persistence flag)通过setDeliveryMode设置在MessageProducer上。也可以使用long form
的发送方法,在每条消息的基础上指定它。持久性是单个消息的属性。
主要区别在于,如果您使用persistent
,则消息将持久化到磁盘/数据库,以便在代理重新启动后仍然有效。当使用non-persistent
,如果您杀死一个代理,那么您将丢失所有传输中的消息。
最终,persistent
通常比non-persistent
慢,特别是在不使用异步发送 (Async Sends)时。