Gemcook Tech Blog
🗞️

週刊Cloudflare - 2025/03/30週

に公開

こんにちは、あさひです 🙋‍♂️ 今週の Cloudflare のアップデートをまとめていきます!

この記事の主旨

この記事では、前週に Cloudflare のサービスにどんな変更があったかをざっくりと理解してもらい、サービスに興味を持ってもらうことを目的としています。そのため、変更点を網羅することを優先します。

2025/03/23 ~ 2025/03/29 の変更

Wrangler

マイナーアップデート

  • wrangler r2 bucket catalog コマンドを追加し、R2 バケットの データカタログ管理 が可能に。
    • このコマンドは Iceberg REST インターフェースを提供し、Spark、DuckDB、Trino などのクエリエンジンからの利用を想定。

パッチアップデート

  • hyperdrive list コマンドにおけるキャッシュオプションの出力フォーマットを改善。

4.5.1

パッチアップデート

  • 実際には Wrangler からのデプロイで動作せず、正式にサポートもされていなかった NodeJSCompatModule を削除。
  • 依存関係を更新:
    • miniflare@4.20250321.1

4.5.0

マイナーアップデート

  • Wrangler において KV バルク取得(Bulk Gets)機能のサポートを追加。

パッチアップデート

  • バインディングのサマリ表示時に Assets バインディングが含まれていなかった問題を修正。
  • @cloudflare/unenv-preset を 2.3.1 に更新し、node:tlscreateSecureContext および checkServerIdentity に対して workerd のネイティブ実装を使用。

4.4.1

パッチアップデート

  • . で始まるディレクトリ内のアセットが存在する場合に wrangler dev がクラッシュするバグを修正。
  • wrangler pages dev --env 実行時のエラーメッセージを改善。
  • wrangler cloudchamber create において IPv6 プリセットの設定を明示的に適用。
  • 依存関係を更新:
    • miniflare@4.20250321.0
    • @cloudflare/unenv-preset@2.3.1

Workers

Workers - ソースマップが一般提供 (GA) になりました

ソースマップが一般提供され、アップロードできる最大サイズが 15 MB (gzip 後) に拡大されました。
ソースマップは、元のソースコードと変換・圧縮後のコードとの対応を取るため、例外発生時のスタックトレースを元のコードにマッピングし、デバッグを容易にします。

ソースマップがアップロードされていない場合、全ての JavaScript が 1 つのファイルに圧縮され、ファイル名や行番号が不正確なスタックトレースとなりますが、ソースマップをアップロードすると正しい情報が表示されます。

なお、ソースマップのアップロードおよびスタックトレースのリマッピングは、Worker の実行とは別に処理されるため、アップロード速度やバンドルサイズ、コールドスタートに影響しません。リマッピングされたスタックトレースは、Tail Workers、Workers Logs、Workers Logpush で確認できます。

wrangler の設定例

wrangler.jsonc

// wrangler.jsonc の設定例
{
  "upload_source_maps": true
}

wrangler.toml

# wrangler.toml の設定例
upload_source_maps = true

:::

CPU 時間制限を最大 5 分まで利用可能に

Cloudflare Workers の新機能として、各リクエストで実行される CPU 時間を最大 5 分まで拡張できるようになりました。従来は、Worker が実際にタスクを処理する時間が最大 30 秒に制限されており、これは処理中に CPU が実際に費やす時間のみをカウントしていました。そのため、計算負荷が高いタスク(例:R2 から大きなファイルの暗号ハッシュを計算するなど)が 30 秒を超える場合、Worker リクエストがタイムアウトしてしまうという問題がありました。

デフォルトでは 30 秒の CPU 時間が設定されており、これによりバグによる予期しないコスト発生を防止しています。しかし、Wrangler の設定ファイル内で cpu_ms の値を最大 300,000 ミリ秒(5 分)に変更することで、必要に応じて長い CPU 実行時間を利用できるようになりました。なお、ここでいう CPU 時間は、Worker が実際に処理に費やす時間であり、サブリクエストの待機時間などは含まれません。

長時間のタスク処理が求められる場合、Workflows や Queues の利用も併せて検討してください。

wrangler の設定例

wrangler.jsonc

{
  "limits": {
    "cpu_ms": 300000
  }
}

wrangler.toml

[limits]
cpu_ms = 300_000

Queues

新規 Pause & Purge API の紹介

新たにメッセージの配信停止とキュー内の全メッセージ削除を行う操作が追加されました。これにより、consumer 側のバグやダウンタイム時に一時的にメッセージ処理を停止したり、開発中のコード変更で不正なメッセージが投入された場合にバックログを一掃することが可能になります。

Wrangler を使用した例としては、pause-delivery コマンドで配信を停止し、resume-delivery コマンドで再開する操作や、purge コマンドでキュー内の全メッセージを完全に削除する操作が提供されています。これらの操作は REST API やダッシュボードからも実行可能です。

wrangler コマンド例
$ wrangler queues pause-delivery my-queue

Pausing message delivery for queue my-queue.

Paused message delivery for queue my-queue.

$ wrangler queues resume-delivery my-queue

Resuming message delivery for queue my-queue.

Resumed message delivery for queue my-queue.
$ wrangler queues purge my-queue

✔ This operation will permanently delete all the messages in queue my-queue. Type my-queue to proceed. … my-queue

Purged queue 'my-queue'

メッセージ配信の一時停止とキューの削除に対応

新たにメッセージの配信を一時停止およびキュー内のメッセージを削除する機能が追加されました。これにより、キューのバックログ管理が容易になり、例えば、消費側の不具合時にメッセージ処理を一時停止したり、誤ったメッセージ送信があった場合にキューをクリーンアップしたりできます。なお、配信の一時停止中もキューはメッセージを受信し続け、再開が可能です。

Gateway

Secure DNS Locations 管理ユーザーロールの導入

DNS フィルタリングのお客様が Protective DNS (PDNS) ソリューションを構成する際、外部のサービスパートナーに対して必要最低限の権限で DNS ロケーションの管理を委任できる新しい「Secure DNS Locations Write」ロールが導入されました。

このロールを利用することで、お客様は DNS ロケーションのエンドポイント管理に外部パートナーを活用する際、権限の過剰付与を防ぎながら細かいアクセス制御が可能になります。さらに、セキュアな DNS ロケーションの要件として、以下の点が求められます。

  • アカウントで利用可能な場合、Bring your own DNS resolver IP アドレスの使用を義務化
  • IPv4/IPv6/DoT エンドポイントでは送信元ネットワークフィルタリングを、DoH エンドポイントではトークン認証または送信元ネットワークフィルタリングを要求

https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/agentless/dns/locations/#secure-dns-locations

Registrar

Cloudflare Registrar で .ai ドメインの登録が可能になりました。これにより、AI 関連のプロジェクトやスタートアップが、Cloudflare のコスト透明性のあるドメイン登録サービスを通じて.ai ドメインを利用できるようになります。

Cloudflare Registrar では、中間マージンなしの原価提供を特徴としており、.ai ドメインも同様にシンプルかつ信頼性の高い価格体系で提供されます。

https://developers.cloudflare.com/changelog/2025-03-27-ai-domains-available/

Cloudflare Fundamentals

アカウントホームのアップデート (2025-03-26)

Cloudflare のアカウントホームがアップデートされ、複数の UI 改善が加えられました。ユーザーは自分のアカウントやプロダクトの状態をより素早く把握できるようになっています。

主な変更点として、アカウントページの読み込み速度が向上し、より直感的にナビゲーションできるようデザインが調整されています。また、アカウントごとのサービス利用状況や設定へのアクセスも簡素化され、全体的なユーザー体験が改善されています。

この更新は Cloudflare ダッシュボード内のすべてのユーザーに適用されています。

Radar

Radar において、エンドポイントの一貫性向上のため、以下のエンドポイントが廃止され、代替エンドポイントに切り替えられました:

  • /attacks/layer3/top/industry/attacks/layer3/summary/industry
  • /attacks/layer3/top/vertical/attacks/layer3/summary/vertical
  • /attacks/layer7/top/industry/attacks/layer7/summary/industry
  • /attacks/layer7/top/vertical/attacks/layer7/summary/vertical

さらに、新たに BGP リアルタイムルートのエンドポイントが追加されました。

DNS

DNS レコードの meta オブジェクトから、1 年以上使用されず新規レコードでは設定されなくなった 5 つのフィールドを削除されました。この変更は、完全な展開までに最大 4 週間かかる可能性があります。対象となるフィールドは、auto_addedmanaged_by_apps とそれに対応する apps_install_id、および managed_by_argo_tunnel とそれに対応する argo_tunnel_id です。

Gemcook Tech Blog
Gemcook Tech Blog

Discussion