一:安装,专业术语,简单队列,工作队列,发布/订阅队列,路由队列,主题队列,RPC队列,事务,确认模式,SpringAMQP

二:什么是MQ?

MQ就是消息队列,是一种进程间通信或同一进程的不同线程间的通信方式。消息队列提供了异步的通信协议。消息的发送者和接受者不需要同时与消息队列互交,消息会保存在队列中,直到接受者取回它。

当大量数据访问数据库的时候,我们可以使用RabbitMQ来进行流量削峰。如图:

当前主流的消息队列:RabbitMQ(速度还可以),RocketMQ(阿里的有收费),ActiveMQ(性能差),Kafka(可能数据丢失)

特点:

MQ是消费者--生产者模型的一个典型的代表,一端往消息队列中不断写入消息,而另一端则可以读取或者订阅队列中的消息。MQ和JMS类似,但不同的是JMS是SUN JAVA消息中间件服务的一个标准和API定义,而MQ则是遵循了AMQP协议的具体实现和产品。

    注意:
1.AMQP ,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。
2.JMS ,Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。 Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。常见的消息队列,大部分都实现了JMS API,如ActiveMQ , Redis 以及 RabbitMQ 等。

最新文章

  1. IOS开发基础知识--碎片24
  2. C# log4net输出发生错误的行号
  3. Linux scp 远程文件/目录传输
  4. (三)C#关于txt文件的读取和写入
  5. 解决WCF大数据量传输 ,System.Net.Sockets.SocketException: 远程主机强迫关闭了一个现有的连接
  6. 将数据库从普通文件系统迁移到ASM中
  7. mybatis generator配置文件
  8. 一笔画问题(floyd+oular+dfs)
  9. Java程序猿从笨鸟到菜鸟之(九十二)深入java虚拟机(一)——java虚拟机底层结构具体解释
  10. html5权威指南:html base标签
  11. git 恢复丢失的文件-- 不提交入口文件
  12. git 更新分支
  13. java多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
  14. 约瑟夫环-循环队列算法(曾微软,google笔试题)
  15. Houdini Distributed Simulations and Render
  16. 我的第一个python web开发框架(33)——接口代码重构
  17. LCA最近公共祖先
  18. 从身份证号码中获取性别、出生日期、籍贯,并更新mongodb
  19. svn各种表示含义及解决
  20. ESP8266基础篇

热门文章

  1. (一)Docker-in-Docker on Kubernetes
  2. docker 容器重启策略
  3. Molar mass UVA - 1586
  4. 详解JavaScript中的正则表达式
  5. 软件篇-05-融合ORB_SLAM2和IMU闭环控制SLAM底盘运动轨迹
  6. UVA10340子序列
  7. Linux中的SSH服务
  8. Ext.MessageBox.alert()弹出对话框详解
  9. 使用 cmake 来搭建跨平台的应用程序框架:C语言版本
  10. GPUImage移植总结