资讯专栏INFORMATION COLUMN

PHP-RabbitMQ学习日记(一)

SolomonXie / 3126人阅读

摘要:通道,建立一个访问通道。队列,每个消息都会被投入到一个或多个队列。路由,根据这个关键字进行消息投递。消息消费者,就是接受消息的程序。

给自己做一个记录

本文主要介绍有一下

1.RabbitMQ是概念

2.RabbitMQ在windows上安装,启动,关闭

3.RabbitMQ其他小介绍

下面一步一步走起来

1.RabbitMQ是概念

RabbitMQ是一个建立在AMQP(高级消息队列协议,一种二进制标准,具体细节百度)基础之上的消息队列软件,采用Erlang语言编写

包括以下这几个玩意

vhost:虚拟主机,开设多个vhost,用作不同用户的权限分离。

channel:通道,建立一个访问通道。

Exchange:交换机,它指定消息按什么规则,路由到哪个队列。

Queue:队列,每个消息都会被投入到一个或多个队列。

Routing Key:路由,exchange根据这个关键字进行消息投递。

producer:消息生产者,就是投递消息的程序。

consumer:消息消费者,就是接受消息的程序。


例如:今天我(生产者)去逛街,然后我买了一件粉色贼骚气的口罩(消息)要送给我女票(消费者),但是等一下我没空,我只能先放在家里,然后叫我女票去拿。然后我使出挤奶的力气让脑瓜灵光一闪(连接RabbitMQ),想起我家在碧桂园小区住(虚拟主机),我从A道路(选择或建立通道)回去,回到小区门口我得进去啊,然后拿出了门卡(路由),刷了一下机器(交换机)进了小区,但是我家在B栋的9楼(队列),然后我就去放好了那个粉色骚气的口罩。下午的时候我女票通过我提供的信息去到了我家拿到了口罩,还微信骂了我一句,就你最骚(消息确认)

2.RabbitMQ在windows上安装,安装web管理,启动,关闭

因为RabbitMQ是erlang语言编写的,所以我们要在windows上使用RabbitMQ需要先安装erlang再安装RabbitMQ

2-1.安装RabbitMQ和elang

下载并安装 Eralng OTP For Windows (erlang的环境)

下载并安装 Rabbit MQ Server Windows Installer

2-2.检查是否安装成功

用cmd(win10打开管理员cmd)打开安装RabbitMQ的安装目录,转到RabbitMQ目录内的rabbitmq-server-3.6.14/sbin目录,然后执行rabbitmqctl status 回车

成功后显示的信息(后面的信息就不截图了,太多了)

2-3.安装RabbitMQWeb管理插件

因为RabbitMQ非常的人性化,自带了一个web管理插件,我们只需要安装此插件就可以开始疯骚的玩弄RabbitMQ了,在cmd输入rabbitmq-plugins enable rabbitmq_management 回车

成功后显示的信息

失败后显示的信息

不要怕,咱们来一个个解决

1.rabbitmq-service stop

2.rabbitmq-service remove

3.rabbitmq-service install

4.rabbitmq-service start

5.rabbitmq-plugins enable rabbitmq_management

没错,就是重装,没什么问题是重装一次解决不了的。如果有那就重装两次,如果两次都失败了呢,赶紧谷了个哥,百了个度走起啊,还想第三次啊

这时候你就可以用浏览器打开http://127.0.0.1:15672/,就可以看见,默认账号密码都是:guest(为什么是这个?想知道去问RabbitMQ创始人)


3.RabbitMQ其他小介绍

3-1.RabbitMQ端口问题,RabbitMQ是默认霸占了5672,15672,25672这三个端口的

    5672端口是用于AMQP协议连接

    15672端口是用于http协议连接(不信可以试试web访问5672看行不行)

3-2.RabbitMQ数据持久化

RabbitMQ有三种可设置的持久化,分别为Exchange(交换机)持久化,Queue(队列)持久化,信息持久化,如果设置了交换机和队列持久化,路由也会自动的持久化

3-3.RabbitMQ消息确认

RabbitMQ有一个消息确认机制,开启后,每处理完一条数据都要返回ack给RabbitMQ在队列中删除消息

3-4.RabbitMQ消息重回队列

重回队列是建立在消息确认的机制上的一个功能,如果出现突发情况,RabbitMQ会把为收到ack的消息重回队列,可以避免消息丢失


以上只是一点点的小内容,还有很多问题,很多情况没有给出介绍,因为我也在求证啊,我也母知道啊!!!!我也很惆怅啊!!!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26154.html

相关文章

  • 个中年程序员学习中国近代史的小结

    摘要:根据以上种种,我认为程序员应该要学习历史。所以有些历史,很多人不信,修史就是一个重要原因中国近代史的重要意义而中国近代史是离我们现在生活最近的历史,时间越近越真实清朝乾隆时期达到世界第一,且是第二到第九的总和。 ...

    CollinPeng 评论0 收藏0
  • ElasticSearch学习日记

    摘要:工作这么多年,第一次想起来写技术博客,记录自己的学习历程。这几天项目中集成全文检索,在此记录自己的学习历程与各位友人共同分享。学习是在自己的电脑安装一环境以下文中所提及的是简称下载地址下载新的版本下载完成解压到你的开发目录即可。 工作这么多年,第一次想起来写技术博客,记录自己的学习历程。这几天项目中集成ES全文检索,在此记录自己的学习历程与各位友人共同分享。学习是在自己的电脑安装Ela...

    codecraft 评论0 收藏0
  • 前端学习日记)javascript基础:变量的作用域

    摘要:张三李四李四李四链式作用域函数包含在函数中,这是函数所有局部变量对函数可见,但是相反是不行的。局部变量必须使用声明,否则声明的是全局变量。父级函数变量对所有子函数可见,子函数会一级一级向上寻找变量。 引言 一直从事服务端开发。由于近年来前端迅速发展,所以想入坑前端行列,虽然一直有接触并开发前端相关的项目,但是想要做前端的工作决定系统的学习一下前端,就先从变量开始吧! 变量的作用域 在j...

    rollback 评论0 收藏0
  • Vue学习日记)——Vue介绍

    摘要:的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。的目标是通过尽可能简单的实现响应的数据绑定和组合的视图组件。并不是框架,只是和他旁边的生态环境组成了一个框架,下面,贴一个官方的渐进式框架介绍图吧,方便理解。 前言 本人学习了一段时间的vue,并尝试写了一些小Demo之后,将vue投入了几个项目之后,一直在边学习边使用,经过看了vue,vuex,vue-route...

    王晗 评论0 收藏0
  • Vue学习日记)——Vue介绍

    摘要:的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。的目标是通过尽可能简单的实现响应的数据绑定和组合的视图组件。并不是框架,只是和他旁边的生态环境组成了一个框架,下面,贴一个官方的渐进式框架介绍图吧,方便理解。 前言 本人学习了一段时间的vue,并尝试写了一些小Demo之后,将vue投入了几个项目之后,一直在边学习边使用,经过看了vue,vuex,vue-route...

    MasonEast 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<