簡單的流程以下:php
1, 添加隊列信息git
2, 隊列信息儲存在redis裏面,我設置的是 10庫爲隊列動做信息,9庫爲隊列詳細的信息github
3, 服務端守護進程不斷接收隊列,再處理隊列,目前代碼的邏輯是,先循環接收10庫的隊列動做信息,再分段多進程處理9庫的隊列詳細信息redis
代碼調用範例:spa
1, 添加隊列(好比添加發送郵件):隊列
$q->add_queue('send_mail', $i, ‘hello world');
進程
2, 服務端處理隊列邏輯,先讀取隊列動做信息,再多進程處理,目前的版本是不能同時處理多個隊列動做信息,只能多進程處理完一條隊列動做信息裏面的每條隊列信息以後,再處理另一條隊列動做信息。(服務端的版本有單進程,多進程兩個版本)ci
感謝Signfork.class類的做者,這裏用了這個多進程的類get
github地址: https://github.com/r00tjimmy/queue-php-redisit