zoukankan      html  css  js  c++  java
  • rabbitmq新版本使用

    生产者

    <?php
    $exchangeName = "sendMessage";
    $queueName = "sendMessageQueue";
    $routeKey = "sendMessageKey";
    
    $message = "hello rabbitmq message!";
    
    $connection  = new AMQPConnection(['host'=>'127.0.0.1','port'=>'5672','vhost'=>'/','login'=>'guest','password'=>'guest']);
    $connection->connect() or die('can not connect broker server !');
    
    $channel = new AMQPChannel($connection);
    //$channel->setPerfetchCount(1);
    
    $exchange = new AMQPExchange($channel);
    $exchange->setName($exchangeName);
    $exchange->setType(AMQP_EX_TYPE_DIRECT);
    $exchange->setFlags(AMQP_DURABLE);
    $exchange->declareExchange();
    
    $queue = new AMQPQueue($channel);
    $queue->setName($queueName);
    $queue->setFlags(AMQP_DURABLE);
    $queue->declareQueue();
    
    $queue->bind($exchangeName, $routeKey);
    
    for($i=0;$i<100;$i++) {
        $exchange->publish($message, $routeKey);
    }
    $connection->disconnect();

    消费者

    <?php
    $exchangeName = 'sendMessage';
    $queueName="sendMessageQueue";
    $routeKey = 'sendMessageKey';
    
    $connection = new AMQPConnection(['host'=>'127.0.0.1','port'=>'5672','vhost'=>'/','login'=>'guest','password'=>'guest']);
    $connection->connect() or die('can not connect broker server !');
    
    $channel = new AMQPChannel($connection);
    //$channel->setPerfetchCount(1);
    
    $exchange = new AMQPExchange($channel);
    $exchange->setName($exchangeName);
    $exchange->setType(AMQP_EX_TYPE_DIRECT);
    $exchange->setFlags(AMQP_DURABLE);
    $exchange->declareExchange();
    
    $queue = new AMQPQueue($channel);
    $queue->setName($queueName);
    $queue->setFlags(AMQP_DURABLE);
    $queue->declareQueue();
    
    $queue->bind($exchangeName, $routeKey);
    
    echo "message ........";
    while(true){
        $queue->consume('dealMsg');
    }
    
    $connection->disconnect();
    
    function dealMsg($event, $q){
        $msg = $event->getBody();
        echo $msg."
    ";
        $q->ack($event->getDeliveryTag());
    }
  • 相关阅读:
    CF 336494 C. Meme Problem
    MySql备份
    MySQL索引背后的数据结构及算法原理
    show profile 开启权限
    示例数据库
    索引使用策略及优化
    shiro权限登录案例
    Swagger技术
    Shiro框架
    shiro授权管理
  • 原文地址:https://www.cnblogs.com/dawuge/p/13612685.html
Copyright © 2011-2022 走看看