定期処理・Webhookに、VPSは必要?
公開・確認:2026年9月19日。公式資料に基づく選定ガイドです。各社VPSでの性能実測・導入レビューではありません。
毎朝のデータ取得や、フォームの通知を受け取る小さな処理。置き場所を決める前に、実行が終わる処理なのか、動き続けるプロセスなのかを分けると候補を絞れます。短い処理なら、まず既存の実行基盤で足りるか確認します。
最初に分ける3つの用途
| やりたいこと | 最初に検討する候補 | 契約前に確認すること |
|---|---|---|
| 決まった時間にデータを取得し、処理を終える | GitHub Actionsなどの定期実行 | 開始遅延を許容できるか。利用枠と実行時間。 |
| HTTP通知を受けて検証し、短い処理で応答する | Cloudflare WorkersなどのHTTP実行環境 | CPU・メモリ等の制限、ライブラリの対応、必要な保存先。 |
| OS上のプロセスを常駐させる、任意の実行環境を管理する | VPS | OS更新・監視・バックアップ・障害復旧を自分で担当できるか。 |
これは用途からの選定目安です。常駐処理にもマネージドサービスという選択肢があり、VPSだけが解決方法ではありません。
定期実行は「指定時刻ちょうど」を保証しない
GitHub Actionsのスケジュール実行は混雑時に遅延し、状況によってはジョブが実行されない場合があります。公開リポジトリでは、活動がない期間が続くとスケジュールが無効になります。開始時刻の厳密さが必要なら、監視・再実行も含めて設計します。GitHub公式:schedule
Cloudflare WorkersにはCron Triggersがあります。時刻はUTC基準なので、日本時間からの変換も必要です。無料枠で足りるかは、実行回数だけでなく処理内容と現在の上限で判断します。Cron Triggers・Workersの制限
VPSを比較する前に書き出すこと
- メモリ:アプリ本体だけでなく、OS・データベース・同時処理・更新時の使用量を含める。まだ測れていないなら「2GBで必ず動く」と決めない。
- CPU:処理1回の時間と同時実行数を測る。外部APIの応答待ちとCPUを使う処理は分ける。
- ストレージ:保存データに加え、ログ・一時ファイル・更新用の空き容量を見込む。
- 転送量:受信と送信を分ける。バックアップの送信も忘れない。事業者ごとに無料枠へ数える方向が異なる。
- 運用:OS更新、鍵の管理、監視、バックアップ復元に使う時間も費用として考える。
月額だけで決めないための確認例
例えば「測定した必要量がRAM 2GB・1vCPU・ディスク30GB、送信500GB/月」という条件なら、それを計算機へ入力して候補を比べます。この数値は入力の例であり、特定アプリの推奨スペックや検証結果ではありません。
初回割引・更新料金・長期前払いを混同しないこと、バックアップ等の追加費用を別に確認することが大切です。時間課金でも、OSを停止するだけで請求が止まるとは限りません。解約・削除の条件は契約先で確認してください。
比較先のページにはA8.netの広告があります。提携のない事業者も掲載し、報酬を並び順に使っていません。契約前に各社の最新料金と条件を確認してください。
公開するWebhookの最低限の備え
送信元が定める署名や認証を検証し、重複通知が来ても二重処理しないようにします。秘密情報をログへ残さず、失敗時の再試行と通知を用意します。これらを自分で保守する負担が大きい場合は、月額差だけでVPSへ移す必要はありません。