이 글에서는 주로 PHP와 함께 ActiveMQ를 사용하는 예제를 공유하고 관련 사항을 설명했습니다. 그것이 모두에게 도움이 되기를 바랍니다.
Point to Point 모델 사용
Point to Point 모델 기능:
한 명의 소비자만 메시지를 받을 수 있습니다.
반복적으로 사용할 수 없습니다.
Producer producer.php 코드:
<?php try { // 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()); }
Consumer 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); } }
Consumer 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 사용 (게시 구독) 모델 Publish/Subscribe 모델의 기능 :
여러 소비자가 메시지를받을 수 있습니다.
<?php try { // 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()); }실행 결과 사진은 다음과 같습니다.
Java ActiveMQ 코드 예제 공유
Active MQ 관련 Session 이해 설정
위 내용은 PHP가 ActiveMQ를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!