我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python使用stomp连接activ

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python使用stomp连接activ

python使用stomp连接activemq

       本篇内容为大家提供的是python使用stomp连接activemq和stomp简介,详细而全面,感兴趣的朋友,可以参考学习一下。


STOMP即Simple (or Streaming) Text Orientated Messaging Protocol,简单(流)文本定向消息协议,它提供了一个可互操作的连接格式,允许STOMP客户端与任意STOMP消息代理(Broker)进行交互。STOMP协议由于设计简单,易于开发客户端,因此在多种语言和多种平台上得到广泛地应用。

STOMP协议的前身是TTMP协议(一个简单的基于文本的协议),专为消息中间件设计。

STOMP是一个非常简单和容易实现的协议,其设计灵感源自于HTTP的简单性。尽管STOMP协议在服务器端的实现可能有一定的难度,但客户端的实现却很容易。例如,可以使用Telnet登录到任何的STOMP代理,并与STOMP代理进行交互。

业界已经有很多优秀的STOMP的服务器/客户端的开源实现,下面就介绍一下这方面的情况。

STOMP服务器

项目名                                  兼容STOMP的版本                                描述
Apache Apollo                      1.0 1.1 1.2                               ActiveMQ的继承者 http://activemq.apache.org/apollo
Apache ActiveMQ                1.0 1.1                                    流行的开源消息服务器 http://activemq.apache.org/
HornetQ                               1.0                                           来自JBoss的消息中间件 http://www.jboss.org/hornetq
RabbitMQ                           1.0 1.1 1.2                                基于Erlang、支持多种协议的消息Broker,通过插件支持STOMP协议 http://www.rabbitmq.com/plugins.html#rabbitmq-stomp
Stampy                               1.2                                            STOMP 1.2规范的一个Java实现 http://mrstampy.github.com/Stampy/
StompServer                       1.0                                          一个轻量级的纯Ruby实现的STOMP服务器 http://stompserver.rubyforge.org/
 

2、STOMP客户端库

项目名                             兼容STOMP的版本                描述
activemessaging                1.0                        Ruby客户端库 http://code.google.com/p/activemessaging/
onstomp                             1.0 1.1                  Ruby客户端库 https://rubygems.org/gems/onstomp
Apache CMS                      1.0                        C++客户端库 http://activemq.apache.org/cms/
Net::STOMP::Client            1.0 1.1 1.2            Perl客户端库 http://search.cpan.org/dist/Net-STOMP-Client/
Gozirra                                1.0                        Java客户端库 http://www.germane-software.com/software/Java/Gozirra/
libstomp                              1.0                        C客户端库,基于APR库 http://stomp.codehaus.org/C
Stampy                                1.2                        Java客户端库 http://mrstampy.github.com/Stampy/
stomp.js                              1.0 1.1                   JavaScript客户端库 http://jmesnil.net/stomp-websocket/doc/
stompest                             1.0 1.1 1.2             Python客户端库,全功能实现,包括同步和异步 https://github.com/nikipore/stompest
StompKit                            1.2                          Objective-C客户端库,事件驱动 https://github.com/mobile-web-messaging/StompKit/
stompngo                           1.0 1.1 1.2              Go客户端库 https://github.com/gmallard/stompngo
stomp.py                             1.0 1.1 1.2              Python客户端库 https://github.com/jasonrbriggs/stomp.py
tStomp                                1.1                           TCL客户端库 https://github.com/siemens/tstomp

下面介绍python使用stomp与activemq完成stomp通信

安装stomp.py:

https://github.com/jasonrbriggs/stomp.py

下载后安装:

python setup.py install

很简单,然后一个简单的示例:

import time
import sys
import stomp

class MyListener(object):
    def on_error(self, headers, message):
        print('received an error %s' % message)
    def on_message(self, headers, message):
        print('received a message %s' % message)

#官方示例的连接代码也落后了,现在分协议版本
conn = stomp.Connection10([('ip...',61613)])  
conn.set_listener('', MyListener())
conn.start()
conn.connect()

conn.subscribe(destination='/queue/test', id=1, ack='auto')
#注意,官方示例这样发送消息是有问题的
#conn.send(body='hello,garfield! this is '.join(sys.argv[1:]), destination='/queue/test')
conn.send(body='hello,garfield!', destination='/queue/test')

time.sleep(2)
conn.disconnect()

好了,可以发送、接收消息了!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python使用stomp连接activ

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python使用stomp连接activ

python使用stomp连接activemq       本篇内容为大家提供的是python使用stomp连接activemq和stomp简介,详细而全面,感兴趣的朋友,可以参考学习一下。STOMP即Simple (or Streamin
2023-01-31

python使用jdbc连接phoeni

lib使用jaydebeapi,依赖jpype链接:https://pypi.python.org/pypi/JayDeBeApi/代码里面有说明 threadsafety = 1,我试了跨线程访问创建的连接对象,进程直接挂了,后来改成使用
2023-01-31

python使用pyodbc连接sqlserver

本文主要介绍了python使用pyodbc连接sqlserver,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-02-08

python 使用pymssql连接sq

Python连接SQL Server数据库 - pymssql使用基础   ----原文地址:http://www.cnblogs.com/baiyangcao/p/pymssql_basic.html下面是pymssql里参数使用说明,如
2023-01-31

python 使用pymssql 连接M

知识点:如果连接数据库不使用默认端口,需要在连接host地址上加上端口如cacelbert01.mysql.alibabalabs.com:3306#coding=gbk###################################
2023-01-31

Python 使用Python远程连接并

使用Python远程连接并操作InfluxDB数据库by:授客 QQ:1033553122Python 3.4.0 CentOS 6 64位(内核版本2.6.32-642.el6.x86_64) influxdb-1.5.2.x86_64.
2023-01-30

怎么使用Python连接MySQL

这篇文章主要介绍了怎么使用Python连接MySQL的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python连接MySQL文章都会有所收获,下面我们一起来看看吧。1、MySQL-pythonMySQL
2023-06-27

使用Python访问软连接

使用Python 访问软连接在linux系统中可以使用软连接从而使多个一个文件夹可以被多个路径引用。下面的这两个语句可以用来判断一个路径是不是软连接,并且获取软连接所指向的实际的文件或者文件夹# 判断path是否是一个链接os.path.i
2023-01-31

如何使用python连接sql server

小编给大家分享一下如何使用python连接sql server,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!先利用pip安装pymssql库pip install
2023-06-15

python redis连接池怎么使用

PythonRedis连接池使用指南了解如何使用Redis连接池优化Redis连接管理,提高性能和减少延迟。本文介绍了安装、创建和管理Redis连接池,以及最佳实践和示例用法。通过利用连接池,您可以避免创建和销毁连接的开销,从而提高应用程序效率。
python redis连接池怎么使用
2024-04-13

MySQL如何使用Python进行连接

今天小编给大家分享一下MySQL如何使用Python进行连接的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、表格与键概念主
2023-07-06

怎么在python中使用merge()连接

今天就跟大家聊聊有关怎么在python中使用merge()连接,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、说明pandas提供了一个类似于关系数据库的连接(join)操作的方法
2023-06-15

使用Python统计端口TCP连接数

此脚本可以用来统计某个端口上连接的IP的数量,统计连接到这一端口的所有IP、最多的IP和次数以及TCP连接状态。    涉及到Python读取网络连接统计信息以及统计计算的一些基本操作。在编写脚本的过程中预先定义了统计信息的数据结构,在向最
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录