訊息驅動批次規則引擎 (2)-發送訊息

發送訊息程式

import sys from random import randint import datetime import pika import uuid mqConnection = None mqChannel = None def OpenMQ(mqHost, mqName, mqDurable): global mqConnection, mqChannel mqConnection = pika.BlockingConnection(pika.ConnectionParameters(host=mqHost)) mqChannel = mqConnection.channel() mqChannel.queue_declare(queue=mqName, durable=mqDurable) def SendMQ(mqName, mqMsg, mqDurable): global mqChannel if mqDurable: mqChannel.basic_publish(exchange='', routing_key=mqName, body=mqMsg, properties=pika.BasicProperties(delivery_mode=2, )) else: mqChannel.basic_publish(exchange='', routing_key=mqName, body=mqMsg) def CloseMQ(): global mqConnection mqConnection.close() def Main(mqHost, mqName, mqDurable): OpenMQ(mqHost, mqName, mqDurable) for i in range(1, 10): mqMsg = '%s|%d|%d' % (uuid.uuid4(), i % 2, randint(6,50)) SendMQ(mqName, mqMsg, mqDurable) print (mqMsg) CloseMQ() if __name__ == "__main__": mqHost = 'localhost' mqName = 'hello2' mqDurable = True Main(mqHost, mqName, mqDurable)