延时消息
2022-08-22 10:15:55   11  举报             
     
         
 延时消息
    作者其他创作
 大纲/内容
 Consume Message
    NM.Topic = PROPERTY_REAL_TOPIC
  Process sendMessageBack
  Pull Message
                  Re-Deliver
  Timeup
  NM.PROPERTY_REAL_TOPIC= %RETRY%CG
  NM.QueueId = DelayLV - 1
  Dispatch NM into ConsumeQueueNM.Tag = DeliverTime
  Broker
  NM = lookMessageByOffset
  Schedule Delay Messages
                  Change
  Report Subscription To Broker
  Result
                  Persistence
  Backup Real Topic toPROPERTY_RETRY_TOPIC
  Consume sendMessageBack
  return RECONSUME_LATER
  MessageStore.putMessage
  Success
  Consumer
  NM.Topic = 'SCHEDULE_TOPIC_XXXX'
  Delete From ProcessQueue
  Failed
  Create New Message (NM)
  Append NM into CommitLog
  NM.Body = OM.Body
                   SendBack
  DelayLV = ReconsumeTimes + 3
                  Backup
  clearPropertyPROPERTY_DELAY_TIME_LEVEL
                 Prepare
  Subscrbe TOPIC: %RETRY%ConsumerGroup
  Fetch Original Message (OM)By Original CommitLog Offset
  Report Consume Offsett
   
 
 
 
 
  0 条评论
 下一页
  
   
   
   
   
  
  
  
  
  
  
  
  
 