• 技术文章 >后端开发 >Python教程

    使用Python的Zato发送AMQP消息的教程

    2016-06-10 15:15:00原创389
    本 帮助主题 展示了使用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创建

    2015416114311025.png (639×311)

    图形界面

    首先创建一个连接定义,然后用它来创建一个对外连接,就像下图所示:

    2015416114351289.png (518×137)2015416114456402.png (645×556)

    2015416114541976.png (512×329)2015416114615866.png (703×617) 总而言之,创建一个新连接和写一段前面所示的代码后,就可以热部署来发送AMQP消息了。
    其它方式的配置

    相反,或者说另外,使用enmasse工具和API同样可以创建,列出,更新或者删除AMQP连接。并不仅仅局限于图形界面方式。
    更多使用示例

    请浏览全部API,以及更多AMQP使用示例请查看这里。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Python
    上一篇:在Docker上开始部署Python应用的教程 下一篇:使用Python的Twisted框架编写简单的网络客户端
    PHP编程就业班

    相关文章推荐

    • Python数据异常值检测和处理(实例详解)• 带你一起解读Python多线程• 一起来分析Python函数式编程• Python学习之解析Flask运行原理(图文详解)• 简单剖析一下Python的format的用法

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网