|
@@ -236,10 +236,14 @@ class RabbitMQ:
|
|
|
if not exchange:
|
|
|
routing_key = queue
|
|
|
|
|
|
+ message_id = tools.get_uuid().replace('-', '')
|
|
|
+ if isinstance(data, dict):
|
|
|
+ message_id = data.get("pyuuid") or message_id
|
|
|
+
|
|
|
# RabbitMQ 的 delivery_mode 属性用于设置消息的持久性。它有两种取值:
|
|
|
# delivery_mode=1:表示消息被标记为持久化,但是仍然可能在服务器重启之前丢失。
|
|
|
# delivery_mode=2:表示消息被标记为持久化,并且会存储在磁盘上,确保消息不会丢失
|
|
|
- properties = dict(delivery_mode=2)
|
|
|
+ properties = dict(delivery_mode=2, message_id=message_id)
|
|
|
body = tools.dumps_obj(data) # 对象序列化
|
|
|
self._channel.basic.publish(
|
|
|
body=body,
|