最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python隊(duì)列RabbitMQ 使用方法實(shí)例記錄

 更新時(shí)間:2019年08月05日 10:39:21   作者:飛起的人生  
這篇文章主要介紹了Python隊(duì)列RabbitMQ 使用方法,結(jié)合實(shí)例形式分析了Python隊(duì)列RabbitMQ創(chuàng)建隊(duì)列發(fā)送消息與創(chuàng)建消費(fèi)者消費(fèi)信息相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Python隊(duì)列RabbitMQ 使用方法。分享給大家供大家參考,具體如下:

目前的exchange的路由策略是:每個(gè)需要隊(duì)列的服務(wù)獨(dú)享一個(gè)隊(duì)列(queue),消費(fèi)者(consumer)采用ACK自動(dòng)應(yīng)答模式處理隊(duì)列消息。

如果需要新增一個(gè)隊(duì)列服務(wù),需要做如下開發(fā)步驟:

1.創(chuàng)建隊(duì)列,發(fā)送消息

<?php
$routingkey = 'key';
//設(shè)置你的連接
$conn_args = array('host' => 'localhost', 'port' => '5672', 'login' => 'guest', 'password' => 'guest');
$conn = new AMQPConnection($conn_args);
if ($conn->connect()) {
  echo "Established a connection to the broker \n";
} else {
  echo "Cannot connect to the broker \n ";
}
//你的消息
$message = json_encode(array('Hello World3!', 'php3', 'c++3:'));
//創(chuàng)建channel
$channel = new AMQPChannel($conn);
//創(chuàng)建exchange
$ex = new AMQPExchange($channel);
$ex->setName('exchange2'); //創(chuàng)建名字
$ex->setType(AMQP_EX_TYPE_DIRECT);
$ex->setFlags(AMQP_DURABLE);
echo "exchange2 status:" . $ex->declareExchange();
echo "\n";
for ($i = 0; $i < 100; $i++) {
  if ($routingkey == 'key2') {
    $routingkey = 'key';
  } else {
    $routingkey = 'key2';
  }
  $ex->publish($message, $routingkey);
}

這樣就產(chǎn)生了50條消息,但是沒有消費(fèi)者,所以沒有被消費(fèi)

2.創(chuàng)建消費(fèi)者,消費(fèi)信息

<?php
set_time_limit(0);
$e_name = 'exchange2'; //交換機(jī)名
$q_name = 'queue2'; //隊(duì)列名
$k_route = 'key2'; //路由key 
//連接RabbitMQ
$conn_args = array('host' => '127.0.0.1', 'port' => '5672', 'login' => 'guest', 'password' => 'guest', 'vhost' => '/');
$conn = new AMQPConnection($conn_args);
$conn->connect();
$channel = new AMQPChannel($conn);  
//創(chuàng)建交換機(jī)
$ex = new AMQPExchange($channel);
$ex->setName($e_name);
$ex->setType(AMQP_EX_TYPE_DIRECT); //direct類型
$ex->setFlags(AMQP_DURABLE); //持久化
echo "Exchange Status:" . $ex->declareExchange() . "\n";
//創(chuàng)建隊(duì)列
$q = new AMQPQueue($channel);
$q->setName($q_name);
$q->setFlags(AMQP_DURABLE); //持久化 
//綁定交換機(jī)與隊(duì)列,并指定路由鍵
echo 'Queue Bind: ' . $q->bind($e_name, $k_route) . "\n"; //阻塞模式接收消息
echo "Message:\n";
$q->consume('processMessage', AMQP_AUTOACK); //自動(dòng)ACK應(yīng)答 
$conn->disconnect();
/** * 消費(fèi)回調(diào)函數(shù) * 處理消息 */
function processMessage($envelope, $queue) {
  var_dump($envelope->getRoutingKey());
  $msg = $envelope->getBody();
  echo $msg . "\n"; //處理消息
}

運(yùn)行之后

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python進(jìn)程與線程操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》、《Python+MySQL數(shù)據(jù)庫程序設(shè)計(jì)入門教程》及《Python常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Django實(shí)現(xiàn)web端tailf日志文件功能及實(shí)例詳解

    Django實(shí)現(xiàn)web端tailf日志文件功能及實(shí)例詳解

    這篇文章主要介紹了Django實(shí)現(xiàn)web端tailf日志文件功能,本文通過實(shí)例給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Python 的 sum() Pythonic 的求和方法詳細(xì)

    Python 的 sum() Pythonic 的求和方法詳細(xì)

    Python 的內(nèi)置函數(shù)sum()是一種對(duì)數(shù)值列表求和的有效且Pythonic 的方法。將多個(gè)數(shù)字相加是許多計(jì)算中常見的中間步驟,因此sum()對(duì)于 Python 程序員來說是一個(gè)非常方便的工具。下面文章就讓我們一起來看具體內(nèi)容吧
    2021-10-10
  • 基于python編寫一個(gè)簡(jiǎn)單的壓力測(cè)試(DDoS)腳本

    基于python編寫一個(gè)簡(jiǎn)單的壓力測(cè)試(DDoS)腳本

    這篇文章主要為大家詳細(xì)介紹了如何基于python編寫一個(gè)簡(jiǎn)單的壓力測(cè)試(DDoS)腳本,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2024-12-12
  • Django生成數(shù)據(jù)庫及添加用戶報(bào)錯(cuò)解決方案

    Django生成數(shù)據(jù)庫及添加用戶報(bào)錯(cuò)解決方案

    這篇文章主要介紹了Django生成數(shù)據(jù)庫及添加用戶報(bào)錯(cuò)解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 教你漂亮打印Pandas DataFrames和Series

    教你漂亮打印Pandas DataFrames和Series

    在今天的文章中,我們將探討如何配置所需的pandas選項(xiàng),這些選項(xiàng)將使我們能夠“漂亮地打印” pandas DataFrames,需要的朋友可以參考下
    2021-05-05
  • Pytorch十九種損失函數(shù)的使用詳解

    Pytorch十九種損失函數(shù)的使用詳解

    這篇文章主要介紹了Pytorch十九種損失函數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python 元組(Tuple)操作詳解

    Python 元組(Tuple)操作詳解

    Python的元組與列表類似,不同之處在于元組的元素不能修改,元組使用小括號(hào),列表使用方括號(hào),元組創(chuàng)建很簡(jiǎn)單,只需要在括號(hào)中添加元素,并使用逗號(hào)隔開即可
    2014-03-03
  • TensorFlow獲取加載模型中的全部張量名稱代碼

    TensorFlow獲取加載模型中的全部張量名稱代碼

    今天小編就為大家分享一篇TensorFlow獲取加載模型中的全部張量名稱代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python安裝配置OpenGL環(huán)境的全過程記錄

    Python安裝配置OpenGL環(huán)境的全過程記錄

    這篇文章主要給大家介紹了關(guān)于Python安裝配置OpenGL環(huán)境的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • pycharm如何debug for循環(huán)里面的錯(cuò)誤值(推薦)

    pycharm如何debug for循環(huán)里面的錯(cuò)誤值(推薦)

    一般debug時(shí),在for循環(huán)里面的話,需要自己一步一步點(diǎn),如果循環(huán)幾百次那種就比較麻煩,此時(shí)可以采用try except的方式來解決,這篇文章主要介紹了pycharm如何debug for循環(huán)里面的錯(cuò)誤值,需要的朋友可以參考下
    2024-07-07

最新評(píng)論

武威市| 清河县| 肃宁县| 微博| 都兰县| 泗水县| 南江县| 安达市| 五家渠市| 义乌市| 苍溪县| 岳西县| 老河口市| 阿坝县| 滨州市| 开封市| 汨罗市| 舟曲县| 靖宇县| 易门县| 政和县| 桑植县| 恩施市| 科尔| 郎溪县| 宁城县| 安岳县| 乌审旗| 新沂市| 前郭尔| 张北县| 崇阳县| 三原县| 阿拉善右旗| 忻城县| 泾源县| 津南区| 齐齐哈尔市| 尼勒克县| 张家界市| 资兴市|