2026年租用 Mac Mini 長期任務進程守護選型: launchd 與 pm2 對比及保活清單

2026年3月25日
RunMini 技術團隊
閱讀約 7 分鐘

七乘二十四與獨立開發者在租用 Mac Mini上常於launchdpm2間抉擇。本文以決策矩陣對照場景、日誌、崩潰重啟與資源占用,並列 plist 欄位、pm2 開機與日誌輪轉清單。內文另連結首頁購買幫助長期託管 FAQ保活實戰

痛點:① 重啟後服務未起。② 日誌分流不清致磁碟滿。③ 退出碼誤判致重啟風暴或不再拉起。

① 選型決策矩陣

聚焦進程守護;健康檢查與 Webhook 可併用站內 OpenClaw 守護文。

維度launchdpm2
適用場景系統守護、任意執行檔、與開機及背景工作階段整合Node 為主、多應用叢集、零停機 reload、ecosystem 統管
日誌標準輸出錯誤分流檔案,可交系統輪替內建 logs、常配 pm2-logrotate
崩潰重啟KeepAlive、SuccessfulExit、ThrottleInterval 節流autorestart、max_restarts、min_uptime、exp_backoff
資源占用無額外中介層,開銷低守護與模組佔記憶體與 CPU,宜設記憶體上限重啟

② launchd plist 關鍵欄位清單

置於 LaunchAgents 或 LaunchDaemons 後以 launchctl 載入。可引用:節流十秒以上抑風暴;SuccessfulExit 設 false時零碼仍可再監控(視工作調整)。

  • Label:唯一名,呼應檔名。
  • ProgramArguments:執行檔與參數。
  • RunAtLoad:載入即跑與否。
  • KeepAlive:布林或細項字典。
  • ThrottleInterval:兩次啟動最短秒數。
  • StandardOutPathStandardErrorPath:日誌路徑。
  • WorkingDirectoryEnvironmentVariables:脈絡。
  • UserNameLimitLoadToSessionTypeProcessType:依帳號與是否需 GUI 選用。
  1. 專用帳號與目錄隔離日誌與工作區。
  2. ProgramArguments 寫全路徑,勿依賴互動 shell。
  3. 先設 stderr 檔排查啟動失敗。
  4. 對齊 KeepAlive 與預期退出語意。
  5. launchctl print 驗證後做重開機復測。

③ pm2 配置與開機

Mac Mini 上常用 pm2 startup 產生開機項再 pm2 save。可引用:min_uptime 四千毫秒以上抑抖動;max_restarts 十至五十次量級視容忍度。

  1. ecosystem 宣告名稱、script、instances、exec_mode。
  2. autorestart 並設 min_uptime、max_restarts、exp_backoff。
  3. 按需 max_memory_restart、node_args 限堆積。
  4. 依 startup 提示完成使用者層載入。
  5. 重開後 pm2 status 與日誌對 SLA。

④ 資源與日誌輪轉

租用節點磁碟與 IOPS 皆成本:日誌上限與保留天數應寫死於配置。可引用:單檔逾五十至二百 MB應輪替;保留三至二十份視稽核。

  • launchd:檔案日誌配 newsyslog 或 logrotate,留意併寫截斷。
  • pm2:pm2-logrotate 設 max_size、retain、compress。
  • 應用內分級 error/warn,勿長開全量 debug。
  • 活動監視器或 pm2 monit 對照曲線校準記憶體上限。

⑤ FAQ

能否同時用 launchd 與 pm2?

可,勿重複守護同一行程;常見為 launchd 只拉起 pm2,或非 Node Worker 單獨 plist。

為何行程常靜默掛掉?

SuccessfulExit 或退出碼語意不符,或 OOM 被系統殺;請對照系統日誌與 stderr。

租用環境還須注意?

確認是否允許長駐 Daemon、SSH 斷線與 Session 類型影響,並寫入 Runbook。

守護與輪替入庫後長期任務方可跨重啟複現。要穩定出口與維運外包的 Mac Mini,請至 租用方案 選節點,並用 幫助中心 接線;延伸讀 部落格首頁

選擇您的 Mac 節點與訪問方式

進程守護只是長期任務的一環:穩定主機與 SSH/VNC 連線同樣關鍵。請查看定價、立即租用,或至幫助中心與長期託管類文章完善 Runbook。

立即租用