Gearman Job Worker for PHP
Last updated
Was this helpful?
Last updated
Was this helpful?
最近同事接觸到需要 worker 來處理一些非同步的事情。諸如訂單、寄發 email 都常用非同步來執行,以往這些事情大多都用排程解決,其實還有更好的 solution。他們使用 Gearman 來解決這個問題。好奇心的驅使,就算不是我實作的我也想去玩玩看新的東西,Gearman 可以在系統裡起一個 Job Worker
也可以算是 service,這個 job worker 可以在不起一個排程的情況底下,幫你寄信、處理訂單。也就是當你有需要使用 email 在呼叫他就好了。
在 CentOS 中可以直接用 yum
安裝
這兩個步驟都很簡單
最後在 php.ini
加上 module
儲存後重新啟動
這樣 php 就支援 gearman 囉
不免俗的一定要測試一下的,這邊我就利用官網提供的程式碼做測試。
首先建立一隻 worker.php
再建立一隻 client.php
然後執行 worker
再執行 client 就可以得到 Hello World 了
若要停止這個 job worker 可以用 Ctrl + C
這東西還蠻強大的,之前試用過 Beanstalk 覺得 Gearman 相對強大許多。
Dec 22nd, 2013 4:40:00pm