MQ(消息队列)
Posted cpbk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MQ(消息队列)相关的知识,希望对你有一定的参考价值。
MQ全称为Message Queue,是一种应用程序对应用程序的通信方法,应用程序通过读写出入消息队列的数据来通信,从而无需专用连接来链接他们(如RPC)。
消息队列是典型的生产者和消费者模型,生产者和消费者只关心消息的发送和接受,没有业务逻辑的侵入,实现了生产者和消费者的解耦。
AMQP:一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息中间件设计。
JMS:实际指JMS API,是由sun公司早起提出的消息标准,意在为java应用提供统一的消息操作,包括create,send,receive。
AMQP与JMS的区别:
JMS定义了统一的接口,来对消息操作进行统一;AMQP是通过规定协议来统一数据交换的格式。
JMS限定了必须使用java语言;AMQP只是协议不规定实现方式,因此是跨语言的。
JMS规定了两种消息模型;AMQP的消息模型更加丰富。
常见的MQ产品
rabbitMQ是一个开源的MQ产品:
1.安装
配置erlang,配置官方的配置文件后在使用yum install erlang,进行安装(否则直接安装的erlang 和新版的rabbitmq要求的版本不匹配)
下载rabbit的rpm 安装包,使用rpm进行安装
2.安装完成后
service rabbitmq-server start --启动服务
rabbitmq-plugins enable rabbitmq_management --enable网页版管理插件
(默认的guest只能通过localhost:15672登陆,因此需要去官方下载一个配置文件模板(rabbitmq.conf),然后放到 /etc/rabbitmq/目录下)
取消图中配置的注释,使得guest用户可以远程登录。修改配置文件后,重启服务(service rabbitmq-server restart),然后就可以使用guset登陆进网页管理界面。
以上是关于MQ(消息队列)的主要内容,如果未能解决你的问题,请参考以下文章