4.3 Queue 的註冊 接下來,我們來處理 AddQueue 在支援不同類型 Queue 時,要不停增加函數多型的情況。 在這邊,我們回顧一下需求。整理一下...
迭代:通用型的 Router 由於前面的實作方式,都是建立在知道 QueueItem 本身的資料類型或結構。 那有沒有可能,回歸到 QueueItem 本身只單...
五、分配機制(調度) 有一天,由於 queue 內的資料量過大,而 worker 來不及消化。我們需要增加 worker 的個數,來加速 queue 的內容。...
5.2 同質性分派 情境一:當 Queue 中存在多筆相同類型的資料,禁止 Consumer 直接取得資料,中間需經由 Dispatch 去分配資料。 這個是...
5.3. 異質性分派 情境二:當 Queue 中存在不同類型的資料,要如何將其分派到對應的 Consumer。 關於這個情境,可以分為兩個的處理: 同一個...
被動式分派 當 consumer 主動跟 dispatch 請求資料,Dispatch 依據 consumer 傳入的可接受的資料類型資訊,判斷 Queue 內...
主動式分派 還有一種情況,是 consumer 會長時間與 Dispatch 保持連線,當 Queue 存在資料時,Dispatch 判斷資料的類型,主動通知相...
5.4 優先性分派 又回到故事時間了,在談談優先性分派前,先來看個真實情境。 在急診室,醫生決定看診的順序,通常是取決於病患的病情急迫程度,而非先到先看。 因此...
六、持久性(Persistent) 在前面的例子中,都是直接將資料放罝在記憶體之中,雖然使用方便,但也會出現對應的問題。 當不可抗的因素,讓系統掛彩。 系統設...
七、功能整合與函式庫開發 經過前面的介紹與概念實作,針對 Queue 的類型、Router、Dispatch 與 持久性這幾個部份,有了大致的理解。接下來,就要...