點對點模型特徵:只有一個消費者可以接收到訊息,不能重複消費。本文主要和大家分享PHP如何使用ActiveMQ實例分享,希望能幫助大家。
生產者producer.php程式碼:
<? phptry { // 1.建立连接 $stomp = new Stomp('tcp://47.52.119.21:61613'); // 2.实例化类 $obj = new Stdclass(); // 3.获取数据 for($i=0; $i<3; $i++) { $obj->username = 'test'; $obj->password = '123456'; $queneName = "/queue/userReg"; // 4.发送一个注册消息到队列 $stomp->send($queneName, json_encode($obj)); }} catch (StompException $e) { die('Connection failed: ' . $e->getMessage()); }
消費者1consumer1.php程式碼:
<? php$stomp = new Stomp('tcp://localhost:61613'); $stomp->subscribe('/queue/userReg');while (true) { //判断是否有读取的信息 if ($stomp->hasFrame()) { $frame = $stomp->readFrame(); $data = json_decode($frame->body, true); var_dump($data); $stomp->ack($frame); }}
消費者2consumer2.php程式碼:
<?php $stomp = new Stomp('tcp://localhost:61613');$stomp->subscribe('/queue/userReg');while (true) { //判断是否有读取的信息 if ($stomp->hasFrame()) { $frame = $stomp->readFrame(); $data = json_decode($frame->body, true); var_dump($data); $stomp->ack($frame); }}
執行結果圖如下:
使用發布/訂閱(Publish Subscribe)模型
發布/訂閱模型特點:
多個消費者都可以收到訊息
能重複消費
生產者producer.php程式碼:
{ // 1.建立连接 $stomp = new Stomp('tcp://47.52.119.21:61613'); // 2.实例化类 $obj = new Stdclass(); // 3.获取数据 for($i = 0; $i < 3; $i++) { $obj->username = 'test'; $obj->password = '123456'; $queneName = "/topic/userReg"; // 4.发送一个注册消息到队列 $stomp->send($queneName, json_encode($obj)); }} catch (StompException $e) { die('Connection failed: ' . $e->getMessage()); }
消費者1consumer1. php程式碼:
<?php$stomp = new Stomp('tcp://localhost:61613');$stomp->subscribe('/topic/userReg'); while (true) { //判断是否有读取的信息 if ($stomp->hasFrame()) { $frame = $stomp->readFrame(); $data = json_decode($frame->body, true); var_dump($data); $stomp->ack($frame); }}
消費者2consumer2.php程式碼:
<?php$stomp = new Stomp('tcp://localhost:61613');$stomp->subscribe('/topic/userReg'); while (true) { //判断是否有读取的信息 if ($stomp->hasFrame()) { $frame = $stomp->readFrame(); $data = json_decode($frame->body, true); var_dump($data); $stomp->ack($frame); }}
執行結果圖表如下:
##相關建議:
以上是PHP如何使用ActiveMQ實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!