前文
在處理高併發系統架構時,非同步是一個很好的手段和提升效率的方式.
我今天跟大家分享,如何利用 MQ 搭配 Worker Pool 來提高系統吞吐量且又不失彈性
原始碼連結 MQ Woker
本篇會包含兩個部分解說
- 如何使用 k3d (k8s) 和 docker-compose 來 Run 起我們 MQ 服務
- 主要核心程式解說
系統簡介
我們透過 MQ 來幫系統作解耦合,前台要處理事情都會先統一打到 MQ 中之後就可以先回覆,使用者結果,後續處理就交給 MQ 來幫我們派發任務到我們指定的 Worker 上處理業務邏輯,這樣可以把原本架構前台後台高偶合的問題解決提供可承受且快速響應的架構.
目前支援兩種 Worker.
- ThreadPool:使用 Thread 當作 Worker 來幫我們處理任務