基於swoole的job調度組件

swoole-jobs

  • 基於swoole的job調度組件

使用場景

  • web中較慢的邏輯,好比統計/email/短信/圖片處理等
  • 單機job任務併發數10000之內,但能夠多機器部署

架構圖

架構圖

特性

  • 基於swoole的job調度組件
  • redis/rabbitmq/zeromq等任何一種作隊列消息存儲(目前只實現redis)
  • 利用swoole的process實現多進程管理,進程個數可配置,worker進程退出後會自動拉起
  • 支持topic特性,不一樣的job綁定不一樣的topic
  • 支持composer,能夠跟任意框架集成
  • 日誌文件自動切割,默認最大100M,最多5個日誌文件,防止日誌刷滿磁盤

示例

composer install

//往隊列添加job
php test/testJobs.php


chmod u+x server.sh
//啓動和關閉服務
./server.sh start|stop|restart

實例圖

注意事項

  • 若是嵌入本身的框架,須要像test/jobs目錄的文件同樣,繼承Jobs基類

壓測

  • 瓶頸: redis/rabbitmq隊列存儲自己和job執行速度

感謝

聯繫

qq羣:141059677php

相關文章
相關標籤/搜索