中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在php中使用ActiveMQ發送消息

發布時間:2021-03-20 16:43:29 來源:億速云 閱讀:137 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關怎么在php中使用ActiveMQ發送消息,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

1.php代碼如下:

<?php
$stomp = new Stomp('tcp://192.168.1.222:61613');

$obj = new Stdclass();
//下面這些數據,實際中是用戶通過前端頁面post來的,這里只做演示
$obj->username = 'test';
$obj->password = '123456';
//發送一個注冊消息到隊列,我們這里模擬用戶注冊
$stomp->send('/queue/userReg', json_encode($obj));

2.php代碼如下:

<?php
$stomp = new Stomp('tcp://192.168.1.222:61613');
//訂閱只對一個有效,如果啟動多個腳本,只有一個會接收到消息
$stomp->subscribe('/queue/userReg');

while(true) {
 //判斷是否有讀取的信息
 if($stomp->hasFrame()) {
  $frame = $stomp->readFrame();

  $data = json_decode($frame->body, true);
  var_dump($data);

  //我們通過獲取的數據
  //處理相應的邏輯,比如存入數據庫,發送驗證碼等一系列操作。
  //$db->query("insert into user values('{$username}','{$password}')");
  //sendVerify();

  //表示消息被處理掉了,ack()函數很重要
  $stomp->ack($frame);
 }
 sleep(1);
}

分別運行上面兩個腳本文件

> /data/php56/bin/php 1.php
> /data/php56/bin/php 2.php

怎么在php中使用ActiveMQ發送消息

我們還可以把上面的2.php代碼分成多步執行。

2.php代碼如下:

<?php
$stomp = new Stomp('tcp://192.168.1.222:61613');
$stomp->subscribe('/queue/userReg');

while(true) {
 //判斷是否有讀取的信息
 if($stomp->hasFrame()) {
  $frame = $stomp->readFrame();

  $data = json_decode($frame->body, true);

  //注冊信息入庫
  //$ret = db->query("insert into user values('{$data['username']}', '{$data['password']}')");
  //這里演示直接設成true了
  $ret = true;
  if($ret) {
   echo $data['username'], '入庫成功', PHP_EOL;
   //如果入庫成功,再次把數據發送到另一個消息隊列中,進行下一步處理
   $stomp->send('/queue/sendVerify', $frame->body);

   $stomp->ack($frame);
  }
 }
 sleep(1);
}

3.php代碼如下:

<?php
$stomp = new Stomp('tcp://192.168.1.222:61613');
$stomp->subscribe('/queue/sendVerify');

while(true) {
 //判斷是否有讀取的信息
 if($stomp->hasFrame()) {
  $frame = $stomp->readFrame();

  $data = json_decode($frame->body, true);

  //$ret = sendVerify()發送驗證碼,實際中應該是請求某接口
  $ret = true;
  if($ret) {
   echo $data['username'], '發送驗證碼成功', PHP_EOL;

   $stomp->ack($frame);
  }
 }
 sleep(1);
}

再次分別運行上面的三個腳本

> /data/php56/bin/php 1.php
> /data/php56/bin/php 2.php
> /data/php56/bin/php 3.php

怎么在php中使用ActiveMQ發送消息

怎么在php中使用ActiveMQ發送消息

以上就是怎么在php中使用ActiveMQ發送消息,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宜城市| 山东省| 额尔古纳市| 西昌市| 宜良县| 德兴市| 卢龙县| 修文县| 平谷区| 荔波县| 响水县| 大邑县| 循化| 遵义市| 龙江县| 贵阳市| 吉隆县| 南涧| 温宿县| 尉犁县| 孟村| 丹巴县| 金川县| 顺昌县| 通榆县| 巴东县| 健康| 永川市| 榆树市| 吐鲁番市| 香格里拉县| 霍州市| 隆安县| 积石山| 丰宁| 万年县| 龙山县| 称多县| 苏州市| 江津市| 凭祥市|