<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          GoNotifyConsumer回調(diào)任務(wù)消費

          聯(lián)合創(chuàng)作 · 2023-09-30 19:44

          GoNotifyConsumer:回調(diào)任務(wù)消費,類似微信支付回調(diào),多條推送隊列

          將一個推送任務(wù)推送進來,消費者將會POST任務(wù)數(shù)據(jù)到指定的url(通知客戶)

          客戶接受接口需要響應(yīng)指定內(nèi)容 默認"success"字段,如果沒有響應(yīng)該內(nèi)容,則認定回調(diào)失敗,將會按一定間隔再次觸發(fā)推送,直到超出次數(shù)或者推送成功

          環(huán)境依賴

          基于goframe框架,請先查看該框架的開發(fā)文檔、gf工具使用文檔

          打包構(gòu)建:gf build main.go

          上傳構(gòu)建包和其他目錄(配置目錄 public目錄等) 運行即可

          默認配置

          默認失敗4次就丟棄,每次間隔為:{0, 5, 10, 30}

          默認推送的url返回"success"即為成功,若要修改,在app/cron/notify/consumer.go的doJob方法中找到相關(guān)邏輯修改 if responseContext != "success" {

          相關(guān) api url

          • 打開推送入口 /notify/OpenQueue (默認打開)
          • 關(guān)閉推送入口 /notify/RefuseQueue
          • 推送數(shù)據(jù)進隊列 /notify/PushQueue post兩個字段
            • url
            • data 數(shù)組

          可以參考api接口的邏輯,實現(xiàn)TCP版推送入口,增加響應(yīng)速率。

          相關(guān)代碼所在文件

          boot/boot.go 開啟監(jiān)聽的隊列

          app/cron/notify/consumer.go 設(shè)置每次隊列失敗后增加的間隔

          如何新增次數(shù)

          • app/cron/notify/consumer.go 新增delayTimeArray數(shù)組的元素
          • boot/boot.go 增加初始化隊列、消費者開啟(傳入隊列,最后一個隊列傳遞自身就好了 反正不會用到)

             

          瀏覽 19
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  四虎国产精品成人永久免费 | 性欧美成人18 | 亚洲青青草在线视频 | 成人色情黄色电影 | 成人黄片在线免费观看 |