小巧而极速的MQ, RPC实现, 支持HTTP/TCP代理,开放易扩展,多语言支撑微服务,系统总线架构
最近再想做对外api服务,再纠结数据库异步驱动后
突然想起了zbus = =
这似乎是一个代价更小的方案
先试试官方demo
发布者
broker = Broker('localhost:15555') p = Producer(broker) p.declare('MyTopic') msg = Message() msg.topic = 'MyTopic' msg.body = 'hello world' res = p.publish(msg)
消费者
broker = Broker('localhost:15555') def message_handler(msg, client): print(msg) c = Consumer(broker, 'MyTopic') c.message_handler = message_handler c.start()
消费者会一直阻塞 只要有资源 就会取到 然后调用回调
经过测试 body可以随意写 都可以序列化
那么数据入库的结构就可以这样
tornado -> httpapi -> 队列塞进去
队列 <---> 消费者 --> 数据库