相信有那麼一天,我們將可以像畢凱艦長一樣用嘴巴叫所有主機做事!


Cheng Wei Chen



Laravel Artisan Queues 佔用大量的 CPU

公司經手的專案中頻繁的使用了 Queue 來進行工作排程,當專案轉交給客戶測試之後,客戶提出了一個新的需求。希望能增加排程併行的數量,假設有 100 個工作要排入 Queues,希望能自動分派給 2 或 4 個序列同時運行,如此來縮短工作時間。

原本在測試環境中上述的架構運行都一切正常,但你也知道的,問題往往都在正式環境中爆發!

正式上線後,果不其然 Server 就爆了,查看原因後才發現,只要一透過 Supervisor 啟動 Laravel Artisan Queues,立馬 CPU 就往上飆升至 80 ~ 90 %,也難怪客戶都還沒做什麼其他動作,Server 就自己先掛掉陷入無回應的狀態。


利用 Docker 建構 Nginx + php-fpm 5.2 + mysql

Docker 的熱潮不用說明,大家都已經耳熟能詳,最近也有越來越多的 Production 案例出現,前一陣子更已推出 1.6 版,我個人的評估認為現在是一個滿好的時間點,可以由資訊收集、觀望,轉變進入測試及實用。

於是決定就用 php 常見的一個問題來當作我個人第一個 Docker 實作的題目, 那就是「如何建立一個舊版本的 php 工作環境」