偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

手把手教你搭建PHP版RabbitMQ消息隊列開發(fā)環(huán)境及Demo實踐

原創(chuàng)
移動開發(fā)
面對一些響應不及時、耗時的業(yè)務場景,我們除了可以使用多線程或者多進程的方式來處理,以提高程序的響應速度,同時,隨著消息隊列越來越成熟,以RabbitMQ為主的高級消息隊列逐漸的走入我們程序員的世界,它也能夠勝任這些場景,今天我們就來聊聊PHP版的RabbitMQ。

【51CTO.com原創(chuàng)稿件】面對一些響應不及時、耗時的業(yè)務場景,我們除了可以使用多線程或者多進程的方式來處理,以提高程序的響應速度,同時,隨著消息隊列越來越成熟,以RabbitMQ為主的高級消息隊列逐漸的走入我們程序員的世界,它也能夠勝任這些場景,今天我們就來聊聊PHP版的RabbitMQ。

本機系統(tǒng)環(huán)境情況

PHP:PHP 7.1.2

web服務器:Apache

數據庫:MySQL

操作系統(tǒng):Win7 64位

安裝RabbitMQ服務端

由于RabbitMQ是基于Erlang的,所以***步需要先去安裝,而目前OS是Win7,所以打開Erlang的官方網站,找到對應操作系統(tǒng)的版本下載并安裝就可以了,由于是exe文件,我們直接點下一步下一步等就能夠完成Erlang的安裝。

rab1

接下來安裝RabbitMQ,同樣打開其官方網站,我們也能夠看到該軟件提供了各種操作系統(tǒng)版本,我們選擇相應的版本進行下載并安裝就可以了,這里是exe文件,所以還是只需要點擊下一步下一步等就完成了。

rab2

安裝PHP RabbitMQ擴展

首先打開php的官方擴展庫PECL網站,找到AMQP(高級消息隊列協(xié)議)擴展,為什么這樣呢?因為AMQP擴展是一個能夠與所有兼容AMQP協(xié)議的服務程序進行通訊,而RabbitMQ就是兼容AMQP的協(xié)議。

打開AMQP我們能夠看到,它有windows擴展(dll),但是當下載的時候,我們發(fā)現有很多版本,即線程安全和非線程安全、64位和32位的版本,這個時候怎么辦呢?

rb3

rb4

不知道你是否過去從PHP官方下載PHP進行安裝的經歷沒有,其實從官方網站下載PHP的時候,就有上面的上面線程安全和非線程安全等,也就是說,其實相應的PECL擴展必須和你的PHP版本相對應,否則,你的擴展會報錯無法使用,于是我們用phpinfo就能夠看到我們目前的PHP版本的情況,找到相應的信息就知道下載那個版本的擴展了。

rb5

原本以為到這里,我已經徹底搞定了這個擴展的安裝,但是當我重新啟動WEB服務器的時候,發(fā)現了一個致命的問題,就是WEB服務器無法正常啟動,于是又開始了各種探索,***發(fā)現,需要將rabbitmq.4.dll文件放在PHP安裝的根目錄下面,也就是在Windows環(huán)境下面,將這個文件拷貝到與php.ini同目錄里面,而這個文件來自于上面擴展的解壓。

rb6

到這里,已經徹底搭建完PHP版的RabbitMQ開發(fā)環(huán)境,接下來進行的一件激動人心的事情就是,進行我的MQ開發(fā)實踐之旅。

一些基本的概念

  • 消息生產者:就是提供消息的一方,這一方主要是面向業(yè)務或者用戶的一方。
  • 消息消費者:就是接收消息并進行處理的一方,這一方一般都是在后端輪詢的運行著,時刻準備接收新的消息并處理。
  • 信道(Channel):用一個形象的比喻就是,有了光纖,我們能夠在光纖上進行打座機電話、看電視、上網等等,一個鏈接能夠提供多種方式的通訊。
  • 消息隊列(Message Queue):就是RabbitMQ對消息生產者生產的消息進行一定的排隊從而形成隊列以供消費者處理。
  • 消息隊列創(chuàng)建者:消息隊列是由消費者申請創(chuàng)建的,因為只有消費者知道怎么處理消息,而不是消息生產者創(chuàng)建的。
  • 消息路由轉發(fā):一個消費者可能會申請創(chuàng)建多個消息隊列,那么生產者的消息應該傳遞到那個隊列呢?這主要由Exchange來進行指定。

rb7

進行***個PHP版Demo

消費者端: server.php

lv8

生產者端:client.php

lv9

開啟RabbitMQ服務程序,并查看日志

lv10

看看上面的日志,已經將相關的數據保存到文件里面了,成功完成我的***次RabbitMQ之旅。

歡迎留言評論,也可以加Q群討論(群號542270018)

【51CTO原創(chuàng)稿件,合作站點轉載請注明原文作者和出處為51CTO.com】

責任編輯:何星 來源: 51CTO
相關推薦

2022-03-14 14:47:21

HarmonyOS操作系統(tǒng)鴻蒙

2021-01-13 14:00:24

鴻蒙hi3518開發(fā)

2021-02-26 11:54:38

MyBatis 插件接口

2011-03-25 12:45:49

Oracle SOA

2018-10-10 15:14:20

Linux虛擬機配置

2010-07-06 09:43:57

搭建私有云

2010-07-06 09:38:51

搭建私有云

2022-01-04 08:52:14

博客網站Linux 系統(tǒng)開源

2024-03-05 18:27:43

2024-04-02 08:58:13

2011-01-10 14:41:26

2025-05-07 00:31:30

2011-05-03 15:59:00

黑盒打印機

2021-07-14 09:00:00

JavaFX開發(fā)應用

2025-05-27 08:05:00

Spring開發(fā)服務調用

2025-02-26 07:40:25

運營分析體系運營策略

2021-08-03 11:52:49

模擬器開發(fā)嵌入式

2010-01-20 10:44:01

linux DHCP服務器

2020-09-08 07:37:44

springBoot MQ rabbitMQ

2009-06-12 18:21:46

App Engine上
點贊
收藏

51CTO技術棧公眾號