消息持久话

一 、 持久化

1.1  非持久 messageProducer.setDeliveryMode(DeliveryMode.NON_PERSISTENT)

非持久化:当服务器宕机,消息不存在

1.2 持久 messageProducer.setDeliveryMode(DeliveryMode.PERSISTENT)

持久化:当服务器宕机,消息依然存在

默认的持久化消息是,1.2 持久,此模式保证这些消息只被传送一次和成功使用一次。对于这些消息,可靠性是优先考虑的因素

可靠性的另一个重要的方面是确保持久性消息传送至目标后,消息服务在向消费者传送它们之前不会丢失这些消息

1,1 非持久

public class JmsProduce {public static final String ACTIVEMQ_URL = "tcp://10.5.96.48:61616";public static final String QUEUE_NAME = "queue01";public static void main(String[]args) throws JMSException {//1.创建连接工厂ActiveMQConnectionFactory activeMQConnectionFactory = new ActiveMQConnectionFactory(ACTIVEMQ_URL);//2.通过连接工厂,获得连接connection并启动访问Connection connection = activeMQConnectionFactory.createConnection();connection.start();//3.创建会话 session//两个桉树 ,第一个叫事务  第二个叫签收Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);//4 .创建目的地(具体是队列还是主题topic)Queue queue = session.createQueue(QUEUE_NAME);//5. 创建消息的生产者MessageProducer messageProducer = session.createProducer(queue);/******** 非持久 start ***********///消息的持久化设置(现在是非持久)messageProducer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);/******** 非持久 end ***********///6.通过使用messageProducer 生产3条消息发送到队列里面for (int i = 0; i <3 ; i++) {// 7.创建消息TextMessage textMessage = session.createTextMessage("Msg---" + i);//8.消息生产者发送给mqmessageProducer.send(textMessage);}//9.关闭资源 顺着开启,倒着关闭messageProducer.close();session.close();connection.close();System.out.println("**** 消息发布到MQ完毕 ****");}}

   然后停止服务器,然后在重启服务,消息没有了

1.2 持久化 演示和上面的一样只不过是将

messageProducer.setDeliveryMode(DeliveryMode.PERSISTENT); 

写入这段代码替换非持久的地方,或是默认不写  也会选择持久化作为 默认的模式。消息被保存在服务中

ActiveMQ消息持久化_队列_7相关推荐

  1. activemq消息持久化_将ActiveMQ持久消息传递性能提高25倍

    activemq消息持久化 Apache ActiveMQ,JBoss A-MQ和Red Hat Apache ActiveMQ是一个非常受欢迎的开源消息传递代理,由创建(和从事) Apache Ka ...

  2. activemq消息持久化_ActiveMQ 5.x中的消息持久性

    activemq消息持久化 我被问了很多关于ActiveMQ如何存储消息(或在某些情况下不存储)的基本知识. 这是它的高级解释. 注意,上下文在JMS中. 如果您使用ActiveMQ的非JMS客户端( ...

  3. JMS学习八(ActiveMQ消息持久化)

    JMS学习八(ActiveMQ消息持久化) ActiveMQ的消息持久化机制有JDBC,AMQ,KahaDB和LevelDB,还有一种内存存储的方式,由于内存不属于持久化范畴,而且如果使用内存队列,可 ...

  4. JMS之——ActiveMQ消息持久化

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/68997105 之前的几篇博文中,我们实现的ActiveMQ消息未实现消息的持久化, ...

  5. activemq消息丢失_基于Redis实现消息队列的典型方案

    基于Redis实现消息队列典型方案 1 概述 2 基于List的 LPUSH+BRPOP 的实现 3 PUB/SUB,订阅/发布模式 4 基于SortedSet有序集合的实现 5 基于 Stream ...

  6. ActiveMQ 消息持久化

    生产端(消息持久化): import javax.jms.Connection; import javax.jms.DeliveryMode; import javax.jms.Destination ...

  7. ActiveMQ 消息持久化到Mysql数据库

    修改配置文件持久化到Mysql数据库 文件路径:\conf\activemq.xml <persistenceAdapter><!--<kahaDB directory=&qu ...

  8. activemq消息丢失_面试必问之消息中间件

    1. 的几种通信方式 publish(发布)-subscribe(订阅)(发布-订阅方式) 发布/订阅方式用于多接收客户端的方式.作为发布订阅的方式,可能存在多个 接收客户端,并且接收端客户端与发送客 ...

  9. RabbitMQ 队列消息持久化

    参考链接: https://www.cnblogs.com/Keep-Ambition/p/8044752.html 假如消息队列test里面还有消息等待消费者(consumers)去接收,但是这个时 ...

最新文章

  1. C++多线程实现生产者消费者模式
  2. WebRTC内置debug工具,详细参数解读
  3. Codeforces 1205C Palindromic Paths (交互题、DP)
  4. 网易互客敏捷交付实践
  5. Yii游客允许查看页面设置
  6. sqlmap的使用 ---- 自带绕过脚本tamper
  7. C#字符串常见操作总结详解
  8. php常用linux命令httpd,Linux常用的100个命令
  9. Django之缓存、信号和图片验证码
  10. IOS 计时器 NSTimer
  11. 启用计算机浏览器摄像头,如何启用浏览器进行摄像头访问?
  12. 讨一个上海中上条件的老婆的成本 (zz)
  13. bp神经网络误差反向传播,bp神经网络结果不一样
  14. 新版Namecheap域名转出注册商方法解锁及获取转移
  15. python-函数-圆形生成器
  16. 报错Could not find module ‘D:\Anaconda\lib\site-packages\scipy\.libs\
  17. 盘点美颜api中的基本算法与开发难点
  18. java期末考试B卷题及答案,《JAVA程序设计》期末试题B卷
  19. 嵌入式Linux学习笔记之Linux内核裁剪
  20. Android 实时监听耳机拔除

热门文章

  1. 一个屌丝程序员的青春(三二三)
  2. 一个P,V操作的习题
  3. angularjs学习2---数据绑定与controller
  4. 第三十六篇:WinUSB调试实例
  5. 根据心电信号计算心率的matlab代码
  6. NetBpm 示例:请假审批(6)
  7. 山东大学软件学院项目实训-创新实训-山大软院网络攻防靶场实验平台(二)-docker安装与学习
  8. Bypass-分流抢票
  9. U3D 游戏引擎之游戏架构脚本该如何来写
  10. 和外国bi相比,国产bi软件更适合中国企业