先に要点
- Cloudflare Workers は、世界中の Cloudflare エッジロケーションで JavaScript / TypeScript / WASM を実行 するサーバレス実行基盤。AWS Lambda の `常時温まっているグローバル版』 と捉えると入りやすい。
- 中身は V8 isolates。Node.js のような OS プロセスではなく、`軽量 JS 実行コンテキスト』 を多数同時に動かす設計で、Cold start がほぼゼロ。
- D1(SQLite)・KV(key-value)・R2(S3 互換オブジェクト)・Durable Objects(状態付き)・Queues(キュー)・Pages(静的)・AI(LLM) など、Cloudflare のサービス群と1アカウント内で統合できる。`Cloudflare スタックでフルスタック』 が成立する。
- 料金は 無料枠が大きく、商用利用も可能。本格採用は ` Cold start ゼロ、グローバル分散、無料枠でも商用OK』 が刺さるユースケースで急速に拡大している。
Cloudflare Workers ってよく聞くけど、AWS Lambda と何が違うの? Vercel Edge Functions とどっち選べばいいの?』 D1 や R2 って Cloudflare の中だけで完結できるの?』 ── 2017年に登場した Cloudflare Workers は、`AWS / GCP / Azure の3大クラウドに加わる第4の選択肢』 として、特に Web 開発者から強い支持を集めています。
ざっくり言うと、Cloudflare Workers は 世界中のエッジで JavaScript を即実行する仕組み + その上に乗るデータサービス群』</strong> です。グローバルに近いユーザーへ素早く返す』 ことを最優先に設計されていて、Cold start ゼロ』 軽量 isolates』 `豊富な統合サービス』 という独自の強みを持ちます。
この記事では、2026年5月時点の Cloudflare Workers の状況をベースに、仕組み・他基盤との違い・データサービスとの統合・採用判断軸 を整理します。 価格や上限は変動するので、最終確認は 公式ドキュメント を参照してください。
Workers の中身 — V8 isolates とは
Cloudflare Workers を理解する鍵は、V8 isolates(アイソレーツ) という実行モデルです。
V8 isolates とは
Chrome / Node.js が使う JavaScript エンジン `V8』 が持つ ` 軽量サンドボックスの単位』。タブごと / ワーカーごとに分けられる仕組みを、サーバ側で多数走らせる発想。
Lambda との根本差
Lambda は 1リクエスト = 1 Node プロセスのコンテナ(間で `寝てる』 状態がある)。Workers は 常時温まっている isolates のプールから即実行。Cold start が事実上ない のはこの設計のおかげ。
グローバル分散
世界 330 以上のロケーションで稼働。ユーザーから物理的に近い場所で実行されるので、`他大陸のリージョンに往復する』 待ち時間が消える。
`どこででも、常に温まったまま、瞬時に応答する』 仕組みが Workers のコアで、これに合わせた API 設計 + 周辺サービス が組まれている、というのが全体像です。
基本の書き方
最小コードを見ます。
// src/index.ts
export default {
async fetch(request: Request): Promise<Response> {
const url = new URL(request.url);
if (url.pathname === '/') {
return new Response('こんにちは Cloudflare Workers!');
}
if (url.pathname === '/json') {
return Response.json({ message: 'OK', time: Date.now() });
}
return new Response('Not Found', { status: 404 });
},
};
# wrangler.toml
name = "my-worker"
main = "src/index.ts"
compatibility_date = "2026-05-15"
# 開発
wrangler dev
# 本番デプロイ
wrangler deploy
Web 標準 API
`fetch(handler)』 が入口、`Request』 を受け取って `Response』 を返す。`Service Worker』 と同じ構造で、ブラウザ知識がそのまま活きる。
Wrangler CLI
`wrangler dev』 で ローカルで本物の Workers ランタイムを動かして開発、`wrangler deploy』 で本番反映。`miniflare』 が組み込まれていて挙動再現も高い。
TypeScript 標準対応
テンプレ生成時から TS で始められる。`@cloudflare/workers-types』 で Worker 専用の型もそろっている。
`Web ブラウザの Service Worker を、サーバ側で動かしている』 と理解するのが、Workers をすばやく掴むコツです。
他のエッジサーバレスとの比較
Cloudflare Workers と並ぶ選択肢を整理します。
| 軸 | AWS Lambda | Vercel Edge Functions | Deno Deploy | Cloudflare Workers |
|---|---|---|---|---|
| 実行モデル | コンテナ | V8 isolates | V8 isolates | V8 isolates |
| Cold start | あり(数百ms〜) | ほぼなし | ほぼなし | ほぼなし |
| 実行場所 | 指定リージョン | 世界中の Edge | 世界中の Edge | 世界中の Edge(330+ ロケーション) |
| Node 互換 | 完全(Node 環境) | 限定的 | npm: 経由で多くを動かす | 限定的(Node 互換モードあり) |
| 統合データサービス | AWS 全サービス | Vercel Postgres / KV / Blob | KV / Queues 等 | D1 / KV / R2 / Queues / DO / AI |
| 料金感(無料枠) | あり | あり(商用不可) | あり | 大きい(商用OK) |
| 得意領域 | AWS 中心の本格運用 | Next.js / Vercel スタック | セキュアな Web 標準系 | グローバル分散 / Cloudflare スタック |
要点は ` どのエコシステムに乗りたいか』 で選ぶ:
- AWS 全体を使う → Lambda
- Next.js + フロント中心 → Vercel
- セキュリティ + Web 標準志向 → Deno Deploy
- 無料枠で商用OK + グローバル分散 + Cloudflare スタック → Workers
`Cloudflare Workers は無料枠の大きさで頭ひとつ抜けている』 のが、個人開発・小規模 SaaS で特に強い理由になっています。
Cloudflare スタックの全体像
Workers の真価は 周辺サービスとの統合』</strong> にあります。Cloudflare の中だけでフルスタックを作れる』 のが大きな差別化点です。
| サービス | 役割 | 典型ユースケース |
|---|---|---|
| Workers | サーバレス実行 | API、middleware、認証、ルーティング |
| Pages | 静的サイトホスティング | Next.js / Astro / Vite のサイト公開 |
| D1 | SQLite ベース RDB | 軽量な業務 DB、メタデータ管理 |
| KV | キーバリューストア | セッション、設定、軽いキャッシュ |
| R2 | オブジェクトストレージ(S3 互換) | 画像 / 動画 / ファイル保管。Egress 無料が強い |
| Durable Objects | 状態を持つ単一インスタンス | チャット、リアルタイム協調、カウンタ |
| Queues | 非同期メッセージキュー | バッチ処理、AI 非同期実行 |
| Workers AI | エッジで動く LLM / モデル | 軽量 LLM 推論、音声、画像 |
| Workers KV キャッシュ | HTTP キャッシュ層 | API レスポンス / 静的アセットキャッシュ |
特に R2 の Egress(下り)無料』</strong> は競合(AWS S3 / Vercel Blob)に対して圧倒的優位です。 画像 / 動画を世界中に配るアプリ』 で、`データ転送料金で爆死する』 リスクを構造的に避けられます。
Workers が向くユースケース
`どんな処理に向くか』 をユースケース別に整理します。
② 認証 / ルーティング / A/B
` ユーザーの近くで素早く判断したい』 系の処理(Cookie 検査、地理判定、A/B 振り分け、JWT 検証)に最適。Lambda Edge の感覚で書ける。
③ メディア配信 + 加工
` R2 から画像を取り出して、サイズ変換して返す』 のようなパイプライン。`Cloudflare Images』 を組み合わせると最適化済み画像を返せる。
⑤ 個人開発 / スタートアップ
無料枠が大きいので、`軌道に乗るまで実質ゼロ円で運用』 が可能。`Vercel Hobby は商用 NG』 だが Cloudflare は無料でも商用 OK。
`軽くて、多くて、グローバル』 な処理の代表例で、Workers の良さが体感できます。
Workers が向かないケース
何でも向くわけではないので、避けたほうがいい場面も整理します。
①長時間処理 / 重い計算
` CPU 時間 / 実行時間に上限』 がある。動画エンコード、長い AI バッチ、PDF レンダリング等は別基盤に逃がす。
② 通常の RDB 直接接続
PostgreSQL / MySQL に TCP 直接接続する系のドライバは基本動かない(Hyperdrive 等で回避可能だが追加設定が必要)。`D1 / Neon HTTP / Supabase HTTP』 を使うのが素直。
③ Node 専用の重い依存
` puppeteer』 のようなブラウザ起動系、`sharp』 のネイティブ画像処理など。`Browser Rendering』 や `Cloudflare Images』 で代替する設計が必要。
軽くて多い』 が得意、重くて少ない』 は別基盤、という棲み分けを意識すると、無理な採用を避けられます。
料金の見方
Workers の料金は理解しやすい構造です。
無料プラン(Free)
1日10万リクエスト無料、CPU 時間 10ms / リクエスト。商用利用 OK。個人 / 小規模 SaaS の最初の数ヶ月はこれで足りることが多い。
有料プラン(Workers Paid)
月 $5 で、1000万リクエスト + 追加分は従量。`本格的なサービス』 のスタートラインは概ねここ。
CPU 時間ベース
` リクエスト数』 ではなく `CPU 実行時間(ミリ秒)』 ベースで課金される。`I/O 待ちは無料』 という設計で、`API を呼んで待つだけ』 のような処理は安く済む。
R2 の egress 無料
R2 から外への転送は無料。`S3 で月数十万円かかっていた egress 料金』 が消える、というのは個人開発から大手まで広く享受できる利点。
`まずは無料で始めて、稼働量が増えてから有料プランに上げる』 が現実的な運用です。
どこで詰まりやすいか
実務で踏みやすい注意点も整理します。
①Node 専用ライブラリの非互換
` Node 互換モード(`nodejs_compat』)』 で多くが動くようになったが、`100% 互換ではない』。ネイティブモジュールに依存するもの、ファイルシステムを直接触るものは要確認。
② Durable Objects の習熟
` 状態を持つ単一インスタンス』 という概念は最初分かりにくい。`チャット』 `カウンタ』 `リアルタイム協調』 の代表的なパターンを通じて学ぶのが早道。
③ 環境変数 / バインディング
Workers では `process.env』 ではなく、`env』 オブジェクト(`fetch』 の引数)から取り出す。`どの DB に接続するか』 は `wrangler.toml』 の binding 定義で結びつける。Node の感覚との差を最初に押さえる。
④ CPU 時間制限の落とし穴
` CPU 計算時間 50ms 制限』 などをうっかり超えると、無料プランでは即停止 / 有料でも追加課金。重い処理は `Queues』 や `Workflows』 に逃がす設計を最初から考える。
`軽くて速い代わりに、制約も独特』 のが Workers の正直な姿で、最初の数日は慣れが必要です。
採用判断のチェックリスト
`いま Workers を選ぶか』 の判断材料です。
`新規で軽量 API、グローバル配信、コスト最適』 の3拍子を狙うなら、Workers は2026年現在もっとも合理的な選択肢の1つです。
AI 時代の Workers
AI 連携の文脈でも Workers の特徴は強く効きます。
エッジで AI 応答ストリーミング
OpenAI / Anthropic API を Workers から呼んで `世界中のユーザーに低遅延で AI 応答』 を流す。Hono + Workers の組み合わせが事実上のデファクト構成。
Workers AI のエッジ推論
Cloudflare 自身が用意する `Workers AI』 で、`Llama 系 / Whisper / Embeddings』 をエッジ実行できる。`OpenAI を呼ばずに完結したい』 ニーズに応える。
RAG パターンとの相性
` Vectorize(ベクトル DB)』 + Workers AI 埋め込みモデル + LLM 呼び出し、を1スタックで組める。`AI 検索アプリ』 を Cloudflare 内だけで完結できる。
コスト最適化
AI 関連は実行回数が増えやすく、`高額請求』 が課題になりがち。無料枠 + 安価な従量課金の Workers でコストを抑えられる。
`軽量 + グローバル + 無料枠 + AI 統合』 の組み合わせは、AI 時代の個人開発と相性が抜群です。
Cloudflare Workers に関するよくある質問
Q. Workers と AWS Lambda、どちらを選ぶべきですか?
A. 用途で分けます。 AWS 全体を使う / Node 100% 互換が必要』 なら Lambda</strong>、<strong> グローバル分散 / Cold start ゼロ / 無料枠商用 OK』 なら Workers。`既存スタックがどこか』 で大半が決まります。
Q. Workers で Node のパッケージは全部使えますか?
A. ` nodejs_compat 互換モードで多くが動きますが、100% ではありません』。ネイティブモジュール、ファイルシステム直接操作、特殊な低レベル API が必要なパッケージは動かないことがあります。採用前に主要依存を試すのが鉄則です。
Q. D1 と PostgreSQL、どちらが向きますか?
A. 軽量 / SQLite で十分 / Cloudflare 完結なら D1』</strong>、<strong> 既存資産 / 強い RDB 機能が必要なら PostgreSQL(Neon / Supabase 経由)』。`どちらも HTTP / Workers との連携』 が整っているので、技術的な障壁は小さいです。
Q. Workers でセッション管理はどうしますか?
A. KV / D1 / Durable Objects のどれかに保存します。` 軽い / TTL がある → KV、永続データと一緒に管理したい → D1、リアルタイム性が必要 → Durable Objects』 という棲み分けが現実的です。
Q. Workers Pages との関係は?
A. Pages』</strong> は <strong>静的ホスティング + 軽量関数</strong> で、<strong> Workers』 は 純粋なサーバレス実行。Next.js / Astro のサイトを置く』 のは Pages、API サーバ専用』 は Workers、という棲み分けです。最近は両者の機能が近づいており、`Pages Functions』 として Workers と統合される方向です。
Q. デバッグ / ログはどう確認しますか?
A. wrangler tail』</strong> で本番ログをライブで見られます。console.log』 がそのまま流れてきます。`Workers Logs』 ダッシュボードでも構造化ログを確認できます。
Q. Workers の学習コストは?
A. JS / TS と Web 標準 API を知っていれば1日で書き始められます。Hono を組み合わせると、Express の感覚で書けて学習コストはさらに下がります。`独自概念(Durable Objects, バインディング)』 を覚えるのに数日、というイメージです。