• python activemq操作: producer


    使用stomp协议,以及对应的python版本, 安装的时候使用 pip install stomp.py 安装

    activemq有queue及topic两种消息类型,这里只用到queue, 同时activemq应当使用 比较新的版本

    import time
    import os
    import stomp
    
    start = time.time()
    user = os.getenv("ACTIVEMQ_USER") or "admin"
    password = os.getenv("ACTIVEMQ_PASSWORD") or "admin"
    host = os.getenv("ACTIVEMQ_HOST") or "192.168.1.1"
    port = os.getenv("ACTIVEMQ_PORT") or 61613
    
    messages = 10
    
    conn = stomp.Connection(host_and_ports=[(host, port)])
    conn.start()
    conn.connect(login=user, passcode=password)
    
    destination = "testmq"
    for i in range(0, messages):
        data = str(time.time())
        conn.send(destination, data, persistent='false')
    
    conn.send(destination, "SHUTDOWN", persistent='false')
    
    conn.disconnect()
    end = time.time()
    timecost = end - start
    print "Total time cost = %s second" % timecost
    print "Average send speed = %s message/second" % (messages / timecost)

    另一种方式, 实际上一样,但是代码较简洁:

    def sendmsgtomq(message, phonenum="138xxxxxxxxx"):
        # 将消息发送给mq 由短信网关处理
        conn = stomp.Connection([("192.168.1.1",61613)])
        conn.start()
        conn.connect(wait=True)
        print "[%s]发送消息到mq, content=%s, sendto=%s"%(time.strftime("%Y-%m-%d %H:%M:%S"),message, phonenum)
        conn.send(body="", headers={"content":message, "phoneNo":phonenum}, destination="/queue/smsinfo")
        time.sleep(2)
        conn.disconnect()
  • 相关阅读:
    hdu 母牛的故事 递推题
    并查集
    又是矩阵 Uva上的一道 经典题目
    poj 3233 矩阵幂取模
    electronvue + elementui构建桌面应用
    主板cmos 映射表
    高级配置与电源接口 acpi 简介
    警告不能读取 AppletViewer 属性文件的解决方法
    高级 Synth(转载)
    vbs 查看硬件信息代码
  • 原文地址:https://www.cnblogs.com/yeyong/p/4595396.html
Copyright © 2020-2023  润新知