本 帮助主题 展示了使用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消息了。
          
           总而言之,创建一个新连接和写一段前面所示的代码后,就可以热部署来发送AMQP消息了。
          
          
            其它方式的配置
          
        
          相反,或者说另外,使用enmasse工具和API同样可以创建,列出,更新或者删除AMQP连接。并不仅仅局限于图形界面方式。
          
           更多使用示例
        
请浏览全部API,以及更多AMQP使用示例请查看这里。


 
           
           
           
					 
					