时间:2021-05-22
本 帮助主题 展示了使用Zato发送AMQP消息 所 需的内容. Zato 基于Python 的 为 SOA 、 云 集成 和 后端 服务 的 企业服务总线(ESB) 。
代码演示
下面是一些需要的代码:
from zato.server.service import Service
class MyService(Service):
def handle(self):
msg = 'My message'
conn_name = 'My CRM connection'
exchange_name = 'My exchange'
routing_key = ''
self.outgoing.amqp.send(msg, conn_name, exchange_name, routing_key)
理解连接定义和连接
在发送第一个消息之前,你必须让Zato知道要把消息发送到哪儿,因为默认情况下Zato支持分离生成消息的服务和消息送达的实际的目的地。
在你的代码里,你只是调用了单个.send方法,不需要真正地指定特定的URL或者凭证,消息过期时间,内容类型等等。你可以指定这些,不过你不需要。
这一切都通过连接定义和真正的连接来实现的。连接定义是一个说明连接到AMQP代理的所需要的详细信息的模板-代理的网络地址,虚拟主机名,用户名/密码以及类似的东西。每个连接定义可以用来创建一个或者多个处理要发送消息的细节-消息优先权,分发模式以及其他这个消息信息的连接。
这两种对象类型可以使用Zato的图形界面创建,也可以通过其它方法如enmasse或者API创建
图形界面
首先创建一个连接定义,然后用它来创建一个对外连接,就像下图所示:
总而言之,创建一个新连接和写一段前面所示的代码后,就可以热部署来发送AMQP消息了。
其它方式的配置
相反,或者说另外,使用enmasse工具和API同样可以创建,列出,更新或者删除AMQP连接。并不仅仅局限于图形界面方式。
更多使用示例
请浏览全部API,以及更多AMQP使用示例请查看这里。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
ActiveMQ是java开发的消息中间件服务。可以支持多种协议(AMQP,MQTT,OpenWire,Stomp),默认的是OpenWire。而python与
AMQP协议中的核心思想就是生产者和消费者隔离,生产者从不直接将消息发送给队列。生产者通常不知道是否一个消息会被发送到队列中,只是将消息发送到一个交换机。先由E
前言RabbitMQ是使用Erlang语言开发的消息中间件,其遵循了高级消息队列协议(AdvancedMessageQueuingProtocol,AMQP)。
本文实例讲述了使用PHP访问RabbitMQ消息队列的方法。分享给大家供大家参考,具体如下:扩展安装PHP访问RabbitMQ实际使用的是AMQP协议,所以我们
RabbitMQ是比较常用的AMQP实现,这篇文章是一个简单的Springboot整合RabbitMQ的教程。安装ActiveMQ服务器,(也可以不安装,如果不