亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求解任務隊列的原理?

求解任務隊列的原理?

當年話下 2019-04-21 20:41:33
最近遇到了一些問題,服務器對某個處理太耗時導致網頁反應速度很慢,聽說了任務隊列。谷歌了一下,基本上都是講某個隊列怎么用,但其實并沒有一個太清晰的概念,能請各位講解一下嗎?首先說一下我理想中的情況。比如一個請求被處理的時候,我發現它很費時,于是對它進行一番描述后再序列化,并存到某個公共的地方。同時有一個守護進程在監聽那個公共的地方,一但發現有動靜就從公共的地方取一條數據出來,反序列化后根據邏輯再調用某些腳本來處理這些費時的任務。不知道這么設想隊列的工作方式有沒有問題呢?如果是這樣的話,gearman或者disque等,扮演的是上述哪些角色呢?能推薦一些適合PHP使用的嗎,謝謝
查看完整描述

2 回答

?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

隊列本質上是為了解耦而存在的.
如你所說的,服務器對某個處理太耗時導致網頁反應速度很.這個本身如果存在可以拆分的部分,展示邏輯和后續的處理邏輯可以分開,就可以采用隊列的方案來進行計算.
舉例來說,閱讀郵件之后,會有一個將未讀標記為已讀的.在你打開郵件的同時,這個狀態的更換可以不用立即處理,丟到隊列里去,先把郵件內容取出來做展示,然后后續有個類似守護進程的不斷的去隊列里消費(或者說不斷的問隊列,有沒有新的消息啊),取出這個將XX郵件未讀狀態更改為已讀狀態的事件,然后做處理.
                            
查看完整回答
反對 回復 2019-04-21
  • 2 回答
  • 0 關注
  • 328 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號