Cloudflare Workers にアプリをデプロイしたとき、無料枠を超えてしまうことがあります。実はこの課金ライン、gzip 後のサイズで判断されているようです。
TL;DR
wrangler.toml
(またはwrangler.jsonc
)にminify: true
を追加するnpx wrangler deploy
で再デプロイすると gzip サイズが小さくなる- gzip サイズは CLI のログで確認できる
変更前後の比較
実際の設定(JSONCの場合)
minify
の中身って?
Cloudflare 側で行われる処理は以下のような内容です:
- コメント、改行、インデントの除去
- 安全な範囲での変数名短縮
- 無駄な構文の変換(例:
if
→return
)
ただし効果は限定的で、すでに最適化されたコードにはあまり効きません。
効果が出るケース
- SSRやAPIで JavaScript が多い場合
- AI API など重いロジックが入っている場合
- 不要なコードがバンドルされている場合
効果が薄いケース
- もともと静的HTMLやCSSのみ
- 依存ライブラリが巨大(OpenAI SDK など)
- すでにビルド時に最小化されている構成(Next.js系)
gzip サイズをさらに減らすには?
- 依存ライブラリの見直し・削除
dynamic import
で不要なものを初期バンドルから外す- 軽量なライブラリへの置き換え
open-next.config.ts
で API やエントリポイントを制限
まとめ
minify: true
は "最後の一絞り" に有効な設定です。
- 劇的に減るわけではないが、無料枠を越えないための対策としては十分効果的
- Cloudflare Workers で gzip サイズを少しでも減らしたい人にはおすすめ
まずはログに出る gzip サイズをチェックして、minify
を試してみましょう。