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());
    }
  • 相关阅读:
    python_django_分页
    python_django_中间件
    python_django_静态文件
    Django项目基础配置和基本使用
    python_django__验证码
    python_django_The requested URL /sunck/login/sunck/showmain/ was not found on this server.错误
    python_django_template_url反向解析
    python_django_template模块
    Andrew Ng机器学习算法入门(一):简介
    Vue.js 条件语句
  • 原文地址:https://www.cnblogs.com/dawuge/p/13612685.html
Copyright © 2011-2022 走看看