背景:
因為如果game logic 有error會導致timer也停止,所以打算將Timer獨立business使其不被business error打斷
專案:Laravel + redis
方案討論:
在原本Laravel專案已經有一套gateway workerman,為了在開一套所以直接複製資料夾在run 一個gateway排程
複製出來的專案就專門跑Timer所以只開business, gateway register都是使用原本的gateway workerman
目前實作方法:使用redis queue將要運行的timer放進去,在Timer gateway 中實作死循環在onWorkerStart,一直輪尋將queue Timer讀取出來生成,並處理業務邏輯。
目前這樣的作法變成說,logic兩邊都要寫,而且會多一個專案出來,請問這樣的作法是可以的嗎?還是版大各位有推薦的方法呢?
繁体字认不全
非常抱歉,因為我的輸入法只有繁體Q_Q
我翻译一下,大意就是
题主本意是想着一个项目内搞定
感謝版大協助整理