有redis為什么還要mq redis隊列和消息隊列的區(qū)別?
redis隊列和消息隊列的區(qū)別?具體業(yè)務(wù)需要定制化,需求的實際變形由生產(chǎn)者和消費者來實現(xiàn)。主請求的實際處理解耦通常采用異步通知請求,這與redis無關(guān)。實現(xiàn)需要用戶封裝任務(wù)并推送redis隊列工人.p
redis隊列和消息隊列的區(qū)別?
具體業(yè)務(wù)需要定制化,需求的實際變形由生產(chǎn)者和消費者來實現(xiàn)。主請求的實際處理解耦通常采用異步通知請求,這與redis無關(guān)。實現(xiàn)需要用戶封裝任務(wù)并推送redis隊列工人.php完成進程和線程同時處理任務(wù)和處理請求。任務(wù)設(shè)計需要包含請求信息(請參考這是一個二進制版本的PHP客戶端,根據(jù)聲明,效率比predis要高。此版本支持將處理程序作為會話。
此擴展的優(yōu)點是不需要加載任何外部文件,因此使用起來更方便。
缺點是很難擴展,普通PHP程序員無法擴展。考慮到redis正處于快速發(fā)展的過程中,擴展功能的缺失仍有一定的影響,因此在維護過程中需要注意升級和更新。
多進程去同時讀取redis消息隊列會沖突么?
首先,redis的發(fā)布訂閱模式不緩存數(shù)據(jù),即我發(fā)布。如果你能接受它,你就能接受它。如果你沒有準備好,你會錯誤地準備之前的數(shù)據(jù)。
至于為什么會與消息隊列關(guān)聯(lián),是因為redis的發(fā)布訂閱模式是通過消息隊列實現(xiàn)的。例如,多個發(fā)布者可以發(fā)布消息,而訂閱者將接收消息。可以看出,中間必須有一個隊列才能獲取在集合中發(fā)布的消息。然后按順序發(fā)出信息