python 发送和接收ActiveMQ消息的实例


Posted in Python onJanuary 30, 2019

ActiveMQ是java开发的消息中间件服务。可以支持多种协议(AMQP,MQTT,OpenWire,Stomp),默认的是OpenWire。而python与ActiveMQ的通信使用的是Stomp协议。而如果你的服务没有开启则需要配置开启。

首先需要安装python的stomp库。

命令如下:

pip install stomp.py

接着,就是上代码了具体如下:

# -*-coding:utf-8-*-
import stomp
import time
 
 
queue_name = '/queue/SampleQueue'
topic_name = '/topic/SampleTopic'
listener_name = 'SampleListener'
 
class SampleListener(object):
  def on_message(self, headers, message):
    print 'headers: %s' % headers
    print 'message: %s' % message
 
# 推送到队列queue
def send_to_queue(msg):
  conn = stomp.Connection10([('127.0.0.1',61613)])
  conn.start()
  conn.connect()
  conn.send(queue_name, msg)
  conn.disconnect()
 
#推送到主题
def send_to_topic(msg):
  conn = stomp.Connection10([('127.0.0.1',61613)])
  conn.start()
  conn.connect()
  conn.send(topic_name, msg)
  conn.disconnect()
 
##从队列接收消息
def receive_from_queue():
  conn = stomp.Connection10([('127.0.0.1',61613)])
  conn.set_listener(listener_name, SampleListener())
  conn.start()
  conn.connect()
  conn.subscribe(queue_name)
  time.sleep(1) # secs
  conn.disconnect()
 
##从主题接收消息
def receive_from_topic():
  conn = stomp.Connection10([('127.0.0.1',61613)])
  conn.set_listener(listener_name, SampleListener())
  conn.start()
  conn.connect()
  conn.subscribe(topic_name)
  while 1:
    send_to_topic('topic')
    time.sleep(3) # secs
 
  conn.disconnect()
 
if __name__=='__main__':
  # send_to_queue('len 123')
  # receive_from_queue()
 
  receive_from_topic()

但是上述只是发送文本类型的消息,除此之外,ActiveMQ还支持MapMessage、ObjectMessage、BytesMessage、和StreamMessage等多个消息类型。

以上这篇python 发送和接收ActiveMQ消息的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python解析xml文件实例分享
Dec 04 Python
sqlalchemy对象转dict的示例
Apr 22 Python
用Python遍历C盘dll文件的方法
May 06 Python
python中pygame针对游戏窗口的显示方法实例分析(附源码)
Nov 11 Python
基于Python的XSS测试工具XSStrike使用方法
Jul 29 Python
Python设计模式之适配器模式原理与用法详解
Jan 15 Python
Python基础之循环语句用法示例【for、while循环】
Mar 23 Python
python3 深浅copy对比详解
Aug 12 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
Aug 15 Python
Python整数与Numpy数据溢出问题解决
Sep 11 Python
Pandas DataFrame中的tuple元素遍历的实现
Oct 23 Python
django 链接多个数据库 并使用原生sql实现
Mar 28 Python
Python批量生成特定尺寸图片及图画任意文字的实例
Jan 30 #Python
理想高通滤波实现Python opencv示例
Jan 30 #Python
对DataFrame数据中的重复行,利用groupby累加合并的方法详解
Jan 30 #Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
Jan 30 #Python
对dataframe数据之间求补集的实例详解
Jan 30 #Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
Jan 30 #Python
Pandas统计重复的列里面的值方法
Jan 30 #Python
You might like
linux下实现定时执行php脚本
2015/02/13 PHP
laravel5.0在linux下解决.htaccess无效和去除index.php的问题
2019/10/16 PHP
jQuery调用AJAX时Get和post公用的乱码解决方法实例说明
2013/06/04 Javascript
jquery 绑定回车动作扑捉回车键触发的事件
2014/03/26 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
JavaScript实现同步于本地时间的动态时间显示方法
2015/02/02 Javascript
jquery插件corner实现圆角边框的方法
2015/03/09 Javascript
javascript中的正则表达式使用详解
2015/08/30 Javascript
基于javascript实现仿百度输入框自动匹配功能
2016/01/03 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
express如何使用session与cookie的方法
2018/01/30 Javascript
解决angularjs前后端分离调用接口传递中文时中文乱码的问题
2018/08/13 Javascript
分享5个顶级的JavaScript Ajax组件库
2018/09/16 Javascript
echarts多条折线图动态分层的实现方法
2019/05/24 Javascript
layui动态渲染生成select的option值方法
2019/09/23 Javascript
微信小程序实现左侧滑动导航栏
2020/04/08 Javascript
简单谈谈offsetleft、offsetTop和offsetParent
2020/12/04 Javascript
微信小程序实现下拉加载更多商品
2020/12/29 Javascript
js实现鼠标拖曳效果
2020/12/30 Javascript
Java 生成随机字符的示例代码
2021/01/13 Javascript
使用Python编写爬虫的基本模块及框架使用指南
2016/01/20 Python
python Pygame的具体使用讲解
2017/11/03 Python
TensorFlow损失函数专题详解
2018/04/26 Python
python频繁写入文件时提速的方法
2019/06/26 Python
ubuntu 18.04 安装opencv3.4.5的教程(图解)
2019/11/04 Python
雅诗兰黛旗下专业男士保养领导品牌:Lab Series
2017/05/15 全球购物
Annoushka英国官网:英国奢侈珠宝品牌
2018/10/20 全球购物
行政管理专业推荐信
2013/11/02 职场文书
幼儿园母亲节活动方案
2014/03/10 职场文书
企业趣味活动方案
2014/08/21 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
收入及婚姻状况证明
2014/11/20 职场文书
2015年安全生产月活动总结
2015/03/26 职场文书
高三毕业感言
2015/07/30 职场文书
2019年共青团工作条例最新版
2019/11/12 职场文书
教你怎么用python爬取爱奇艺热门电影
2021/05/20 Python