首页 > 编程知识 正文

rabbitmq docker,docker命令行大全

时间:2023-05-05 21:35:05 阅读:146640 作者:3924

高级消息队列协议(amqp )是一种在进程之间交换异步消息的网络协议。

RabbitMQ是一种使用Erlang语言实现高级消息服务质量协议(amqp )的消息中间件,起源于在分布式系统中存储传输消息的金融系统。

所有MQ都称为消息队列,消息队列(MQ )是APP应用程序与APP应用程序之间的通信方式。 APP应用程序读取和写入队列中的消息(用于APP应用程序的数据)并进行通信,而无需使用专用连接进行链接。 消息传递是指通过在消息中发送数据在程序之间进行通信,而不是相互直接调用进行通信。 通常,直接调用用于远程过程调用等技术。 队列是指APP应用程序通过队列进行通信。 队列的使用消除了发送和接收APP应用程序以及并发的请求。 其中成熟的MQ产品有IBM WEBSPHERE MQ等。

消息中间件消息(Message )是在APP应用程序之间传输的数据,也有文本字符串、JSON等消息和嵌入对象等复杂消息。

消息队列中间件(Message Queue Middleware,简称MQ )是指利用高效可靠的消息传递机制进行与平台无关的数据交换,并基于数据通信进行分布式系统的集成通过提供消息传递和消息队列模型,可以在分布式环境下扩展进程之间的通信。

消息队列中间件也可以是消息队列或消息中间件,通常有两种分发模式。

1.点对点(P2P,Point-to-Point)模式

点对点模式是基于队列的,消息生产者向队列发送消息,消息消费者从队列接收消息,队列的存在允许消息的异步传输。

2.发布/订阅(Pub/Sub)模式

传递模式定义了如何向主题内容节点传递和订阅消息。 主题可以被认为是消息传递的中间人,消息发布者向主题发布消息,消息的订阅者从主题订阅消息。 主题使消息订阅和消息的发布者相互独立,确保消息的发布而不接触。 发布/订阅模式在消息一对多广播时采用。

主要功能可伸缩性:集群服务

消息持久化:内存持久化从消息到硬盘,从硬盘到内存

可靠性:使用几种机制保证可靠性,包括持久化、传输确认、发布确认等;

灵活的路由—在消息进入队列之前,通过交换机路由消息。 对于典型的路由功能,RabbitMQ已经提供了一些内置交换机来实现;

可扩展性—可以由多个RabbitMQ节点组成一个群集,也可以根据实际业务情况动态扩展群集中的节点。

高可用性—队列可以在群集中的计算机上设置镜像,因此即使某些节点出现问题,队列也可以使用。

多协议: RabbitMQ除本机支持AMQP协议外,还支持STOMP、MQTT等多种消息中间件协议;

多语言客户端: RabbitMQ几乎支持所有常用语言,包括Java、Python、Ruby、PHP、C#和JavaScript。

管理界面: RabbitMQ提供一个易于使用的用户界面,允许用户监视和管理消息、群集中的节点等;

插件机制: RabbitMQ为实现多方面扩展提供了许多插件。 当然,也可以创建自己的插件。

RabbitMQ的核心概念Publisher :生产者、消息的发送方。 连接:网络连接。 通道:用于通道、多路连接的独立双向数据流通道。 Exchange (交换机路由器)负责将消息路由到相应的队列。 绑定:队列和交换机之间的关联。 将消费者感兴趣的队列绑定到指定的交换机,以便Exchange可以准确地将邮件传递到指定的队列。 队列:队列,消息的缓冲区。 虚拟主机—虚拟主机、虚拟主机提供资源的逻辑分组和隔离。 包括连接、交换、队列、绑定、用户权限、策略等。 Broker :消息队列中的服务器实体。 消费者:消息的接收者。 原始RabbitMQ安装方法有点复杂,但现在有强大的功能可以在http://www.Sina.com/docker上一键安装。 如果无法使用docker,请点击这里的教程进行安装学习。 这里假设docker安装成功。

1 .先来docker hub首页。 在https://hub.docker.com/上,按如下方式搜索RabbitMQ :

找到管理插件,然后复制以下命令

然后打开命令框,首先打开docker,然后粘贴刚才复制的命令。 这里的-P是随机端口,测试很简单

[ root @ localhost lemon ] # servicedockerstartredirectingto/rydzh/systemctlstartdocker.service [ root @ localhost lemon ]

entf5eb3c4645a2b844253021210a171143eeadac912f21a8c9d7be0f8371fcad2e

然后看有没有跑起来,如下:

[root@localhost lemon]# docker psCONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                                                                                                                                                     NAMESf5eb3c4645a2        rabbitmq:3-management   "docker-entrypoint.s…"   3 minutes ago       Up 3 minutes        0.0.0.0:32773->4369/tcp, 0.0.0.0:32772->5671/tcp, 0.0.0.0:32771->5672/tcp, 0.0.0.0:32770->15671/tcp, 0.0.0.0:32769->15672/tcp, 0.0.0.0:32768->25672/tcp   some-rabbit

这里的15672为管理端口,映射到了32769端口。通信端口为 5672,映射到了32771 端口,浏览器输入:http://192.168.1.132:32769

 如果看到上面页面就说明你的rabbitmq已经安装好了,默认用户名密码为:guest ,点击登录。如下:

登陆成功页面。 

 

 

 

 

 

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。