背景:在对接物联网设备时候常用的协议就是:MQTT、AMQ、https、还有WebSocket,此案例就是针对接物联网设备传输的消息的消费
原理:通过新建守护线程的方式来启动mq服务,来消费设备平台端发来的消息;
def run(self):
"""rabbit server:接收消息"""
try:
channel = self.get_client()
self.state = 'running'
_logger.info(f"运行rabbit server:{self.name}")
print('channel', channel)
t = threading.Thread(target=channel.start_consuming)
# 设成守护进程:在程序运行的时候在后台提供一种通用服务的线程
t.setDaemon(True)
t.start()
except Exception as err:
self.state = 'stopped'
_logger.error(f"启动线程失败:{traceback.format_exc()}")
心有猛虎,细嗅蔷薇