由于最近需要使用rabbitmq来进行消息队列的读取,但以前从来都没有接触过这等高深的技术,所以只好从头开始研究,下面就把这几周的成果分享出来,针对没有接触过消息队列的同学,希望能给你们一些帮助。
- 安装rabbitmq
- 使用composer安装laravel的php-amqplib/php-amqblib包
- 推送消息到队列和读取队列中的消息
安装rabbitmq
安装rabbit首先需要安装erlang环境,然后下载rabbitmq客户端进行安装,由于我实在windows环境下进行搭建的,所以过程很简单,这里就不直接介绍安装方法了,可以自行百度。安装完成之后记得使用命令行安装rabbitmq的浏览器插件,然后就可以在浏览器中看到rabbitmq的信息了。
由于我研究的时间不是很长,所以这里面很多我也不是很清楚。这个Queues下面的列表代表着这个服务器上存在几个队列。
使用composer安装扩展
扩展地址
可以直接在composer.json文件中添加,然后执行composer update,也可以在命令行中执行composer require
推送消息到rabbitmq中
Github上有详细的实例代码,我这里只是将其简化。
config.php
<?php
//创建配置文件
//使用自动加载类
require_once __DIR__ . '/vendor/autoload.php';
define('HOST', 'localhost');
define('PORT', 5672); // 注意这里端口号,在浏览器中的端口号是15672,但在这里确实5672
define('USER', 'guest');
define('PASS', 'guest');
define('VHOST', '/');
//If this is enabled you can see AMQP output on the CLI
//如果为true会显示一堆<hex>这种类型的调试信息。
define(