Эх сурвалжийг харах

消息队列分级并设置动态消费者

luojiehua 2 өдөр өмнө
parent
commit
abaee0e82a

+ 15 - 1
BaseDataMaintenance/maintenance/dataflow_mq.py

@@ -85,6 +85,7 @@ class Dataflow_ActivteMQ_attachment(Dataflow_attachment):
         self.mq_attachment_his = "/queue/dataflow_attachment_his"
         self.mq_attachment_failed = "/queue/dataflow_attachment_failed"
         self.mq_extract = "/queue/dataflow_extract"
+        self.mq_extract_his = "/queue/dataflow_extract_his"
 
         self.queue_attachment_ocr = Queue()
         self.queue_attachment_not_ocr = Queue()
@@ -343,7 +344,20 @@ class Dataflow_ActivteMQ_attachment(Dataflow_attachment):
 
                     dtmp.setValue(document_tmp_attachment_extract_status,1,True)
                     dtmp.setValue(document_tmp_dochtmlcon,dhtml.getProperties().get(document_tmp_dochtmlcon),True)
-                    send_succeed = send_msg_toacmq(self.pool_mq,json.dumps(dtmp.getProperties(),cls=MyEncoder),self.mq_extract)
+
+                    page_time = item.get(document_page_time,"")
+                    current_date = getCurrent_date(format='%Y-%m-%d')
+                    last_7_date = timeAdd(current_date,7,format='%Y-%m-%d')
+                    if page_time<last_7_date:
+                        is_his = True
+                    else:
+                        is_his = False
+                    if not is_his:
+                        queue_name = self.mq_extract
+                    else:
+                        queue_name = self.mq_extract_his
+
+                    send_succeed = send_msg_toacmq(self.pool_mq,json.dumps(dtmp.getProperties(),cls=MyEncoder),queue_name)
                     if send_succeed:
                         _to_ack = True
                 except Exception as e: