什麼是 Laravel Cloud
Laravel Cloud 是 Laravel 官方的 全託管 PaaS。 從應用部署、擴縮、資料庫、快取到 WebSocket 基礎,皆為 Laravel 整合。 Cloud 的 Changelog 中,February 24, 2025 記錄了 Launched Laravel Cloud!。是 2025 年才開始一般提供的相對新服務。
與 Forge 的差異
Laravel Cloud 與 Laravel Forge 都是為 Laravel 開發者,但層級不同。
「不想意識到基礎架構,希望能快速上線 Laravel 應用」建議 Cloud;
「想細部控制伺服器」則 Forge 較合適。
Laravel Cloud 擅長的事
Laravel Cloud 的優勢在於,Laravel 實務常用的功能都可從儀表板中心輕鬆啟用。Task Scheduler
在 Scheduled Tasks,只要對 App cluster 或 Worker cluster 啟用 Scheduler,schedule:run 就會每分鐘執行。
Managed Queues(受託管佇列)
在 Queues 中建議使用 Managed Queues。Laravel Cloud 會自動處理佇列的 provision、worker 啟動與擴縮,沒有 Job 時 worker 數量會降到零,僅在處理中計費。
Managed Queues 可分離 Web 流量與 Job 處理,並使用失敗 Job 儀表板。
若想自管
database 或 redis 等其他 driver 則用 Worker cluster;若與應用同 Compute 就足夠,用 App cluster 的背景 Process。
1
建立 Managed Queue
在環境的基礎架構畫布儀表板中點選 New Managed Queue。
2
決定佇列名稱與 Worker 設定
設定佇列名稱、instance 大小、輪詢間隔、最大 worker 數等。
3
儲存後部署
儲存設定並重新部署後,Laravel Cloud 會自動準備佇列與 worker pool。
Scale to Zero(Flex Compute)
Compute 中的 Flex 是低成本且靈活的 compute class。新的 Scale to Zero 就是把此 Flex Compute 由舊 Hibernation 演進而來的機制。新的 Flex Compute 在 HTTP 請求抵達時的啟動時間縮短至 500ms 內,過去要等 5〜20 秒的前提已不存在。 啟用只要在 App cluster 設定畫面把 Scale to Zero 開關切為 On,儲存後重新部署即可。 此外,Scale to Zero 啟用的環境即使在 sleep 中,也會為 Scheduled Tasks 與佇列處理而自動啟動。 在 App cluster 上跑schedule:run、將 Job 處理交給 Managed Queues 的組合,是目前官方文件中最好用的組合。
App cluster 上自管
queue:work 若跨越 sleep timeout 可能被中斷。若要確保佇列處理持續,請依官方文件優先採用 Managed Queues。MySQL Scale to Zero
Laravel MySQL 的 Flex 尺寸也支援 Scale to Zero。資料庫在一段時間(idle timeout 可設 1 分至 1 小時)未接收連線就會 sleep,並停止 Compute 計費。儲存空間始終在線,因此 sleep 中資料仍保留,僅儲存部分繼續計費。 當下一次連線抵達時會自動啟動。所有 Laravel MySQL cluster 前端都有 Proxy,因此啟動中的連線會由 Proxy 保留後再轉發到資料庫。不會出現連線錯誤,只有第一個查詢會延遲幾百毫秒(記憶體越大啟動時間傾向越久)。自動備份或手動快照時也會暫時啟動,完成後再次 sleep。 目前於 US East (N. Virginia) 與 US East (Ohio) 的 Flex 尺寸可用,其他區域將陸續支援。既有的資料庫會以目前大小與費率繼續運作。Pro 尺寸為常時運轉,不在 Scale to Zero 對象內。 搭配 Compute 的 Scale to Zero、Laravel Valkey 的 Scale to Zero,即便是流量有波動的正式環境、開發環境或 side project 也能將成本壓到最低。Laravel Octane
在 Compute 啟用 Use Octane as runtime,Cloud 就會以 Octane + FrankenPHP 架構執行,不必手動組合伺服器設定。Inertia SSR
在 Compute 啟用 Use Inertia SSR 即可使用。若使用啟動套件,建議npm run build:ssr。
WebSocket 伺服器(Reverb)
透過 Laravel Cloud WebSockets 可建立以 Reverb 為基礎的 WebSocket cluster。附掛到環境後REVERB_* 與 VITE_REVERB_* 會自動注入。
Laravel Nightwatch 整合
Environments 提供一鍵整合,Cloud 的 Changelog 在July 1, 2025 也記錄了 One-Click Nightwatch Integration。
若需要手動設定,nightwatch-on-cloud 有相關步驟。
費用與免費方案
Laravel Cloud 的費用基本上為方案費 + 用量計費。 詳細以 Pricing 為準。- Starter:月費
$5。每月附$5用量 credit。新註冊首月免費 - Growth:
$20/mo + usage,每月附$5用量 credit - Business:
$200/mo + usage,每月附$5用量 credit
實際使用的注意事項
無法採用需 root 權限的運作
Cloud 是 PaaS,優先於 OS 層級自由度的是運維簡便性。 若需要 kernel 設定或自訂常駐 daemon 等以 root 權限為前提的作業,可考慮 Forge 等方案。Nightwatch 事件量請先控制
若在免費額度或小規模架構使用 Nightwatch,事件量容易攀升,建議一開始就先設取樣。適合與不適合的專案
適合
- 想以最短時間讓 Laravel 應用上線
- 想一次運維 Scheduler / Queue / Octane / Inertia SSR / Reverb
- 想專注於應用開發、降低伺服器運維成本
不適合
- 想以 root 權限對 OS 層級進行深度調校
- 有既有特殊基礎架構需求(自訂中介軟體或特殊網路限制)