用戶(hù)請(qǐng)求接口開(kāi)啟推送任務(wù),服務(wù)端收到后回調(diào)用戶(hù)地址推送消息(不用長(zhǎng)連接)
用戶(hù)請(qǐng)求接口停止推送任務(wù),服務(wù)端收到后停止回調(diào)用戶(hù)地址
用戶(hù)有幾十上百,是用定時(shí)器還是其他方法呢?
如果用定時(shí)器停止時(shí)如果和定時(shí)器不在同個(gè)進(jìn)程只憑定時(shí)器ID能否刪除定時(shí)器?
暫無(wú)
這種方式不適合用定時(shí)器;
安裝webman的隊(duì)列和異步HTTP客戶(hù)端;把需要回調(diào)的任務(wù)投入隊(duì)列,由隊(duì)列去消費(fèi) 回調(diào)用戶(hù)地址;
當(dāng)用戶(hù)停止推送任務(wù)時(shí),停止向隊(duì)列投遞任務(wù),停止回調(diào)用戶(hù)地址;
推薦消費(fèi)隊(duì)列;redis、redis-stream、rabbitmq都可以;
看了下有個(gè)疑問(wèn),多個(gè)用戶(hù)的消息只能在一個(gè)隊(duì)列下消費(fèi)嗎?(指的是動(dòng)態(tài)隊(duì)列的消費(fèi))
提示
消費(fèi)進(jìn)程可以同時(shí)消費(fèi)多種不同的隊(duì)列,新增隊(duì)列不需要修改process.php中的配置,新增隊(duì)列消費(fèi)者時(shí)只需要在app/queue/redis下新增對(duì)應(yīng)的Consumer類(lèi)即可,并用類(lèi)屬性$queue指定要消費(fèi)的隊(duì)列名
文檔的消費(fèi)多種隊(duì)列是事先寫(xiě)死的,我想要投遞時(shí)A、B、C...隊(duì)列,消費(fèi)時(shí)消費(fèi)對(duì)應(yīng)的隊(duì)列
http://wtbis.cn/plugin/69
http://wtbis.cn/plugin/67
可以看一下這兩個(gè)隊(duì)列
當(dāng)然http://wtbis.cn/plugin/67的2.0還是beta,暫時(shí)還沒(méi)做完整的測(cè)試用例
另外,你說(shuō)的這個(gè)場(chǎng)景,和我的 http://wtbis.cn/plugin/102 這個(gè)插件中的HookServer場(chǎng)景是一樣的,你可以clone下來(lái)參考一下,我是通過(guò)隊(duì)列消費(fèi)來(lái)進(jìn)行處理的