プログラミングとソフトウェア開発

Cloudflare、Vite上でNext.jsアプリを実行するVinext 1.0をリリース

Cloudflareは、Pages RouterまたはApp Routerで構築されたNext.jsアプリをVite上で実行し、複数のプラットフォームにデプロイできるフレームワーク、Vinextの1.0を発表した。このリリースには、より広範な互換性、ページのライフサイクルとキャッシュのサポート、新バージョンへユーザーを誘導する前にキャッシュをウォームアップする仕組みが含まれている。

2026-09-28
1 分で読めます
0 閲覧数
certi.news Editorial Team
Cloudflare、Vite上でNext.jsアプリを実行するVinext 1.0をリリース

Cloudflareは、Next.jsアプリをVite上で実行し、Cloudflare Workers、Netlify、AWS Lambdaなどのプラットフォームにデプロイできるオープンソースフレームワーク、Vinextの1.0をリリースした。このプロジェクトは、Pages RouterまたはApp Routerを使用するアプリを含む、新規アプリと既存プロジェクトを対象としており、Next.jsの新しい構成だけにサポートを限定していない。

Next.jsアプリとのより広範な互換性

Vinextは、2月のローンチ時に1週間続いたAI主導の実験から、トラフィックが多く動的なアプリで本番利用されているとCloudflareが述べるフレームワークへと移行した。同社によると、顧客が求めた機能の大半との互換性は99%を超えており、同じ名前のAPIを単に模倣するのではなく、アプリの実際の挙動を引き続きテストしている。

このリリースは、App RouterとPages Routerの両方に加え、ハイブリッドアプリ、Reactサーバーコンポーネント、サーバーアクション、APIルート、ルートハンドラー、ミドルウェア、クライアントサイドナビゲーションをサポートする。また、サーバーサイドでのページのレンダリング、増分静的再生成(ISR)、静的アセットへのエクスポート、バックグラウンドまたはオンデマンドでの再検証にも対応する。

実際には何が変わるのか?

Vinextは、両方のルーターとサポート対象の実行環境にまたがるキャッシュ機能を統一し、Workers Cacheにも対応する。また、Next.js互換のトレース機能を提供するため、既存のOpenTelemetryとSentryの設定を継続して利用でき、Cloudflare Workers上ではWorkersネイティブの監視ツールと統合される。

このリリースでは、開発時と本番時のworkerd環境を直接サポートし、画像最適化やHyperdriveなどのCloudflareリンク機能にアクセスできる。一方、Cache Componentsに関連するuse cacheディレクティブのサポートは限定的なままである。Cloudflareは、現在の優先事項は本番アプリが依存するフレームワークの中核機能だと説明している。

リリース前のキャッシュウォームアップ

Vinext 1.0は、ビルド中にApp RouterとPages Routerのページを事前レンダリングし、その後ISRを通じて提供し、ルートまたはタグに基づいて無効化する仕組みを提供する。ただし、数万または数十万のURLを含むアプリ向けに、事前レンダリングの一部をビルドマシンからCloudflareのネットワークへ移す別のオプションも追加している。

cache warming機能は、Next.jsで通常使われる指標を利用して準備すべきページを特定し、トラフィックの多いページを特定することもできる。新バージョンを本番トラフィックに移行する前に、Cloudflareはトラフィック比率0%でWorkerのバージョンをデプロイし、そのバージョンからページをリクエストしてキャッシュを埋める。処理が完了した後、デプロイを昇格させることができる。これにより、アクセスの少ないページを順番にビルドする際の待ち時間を短縮できるが、この機能を使用する場合は、実質的にCloudflareへのデプロイと結び付いている。

テストと移行の手順

Cloudflareによると、このプロジェクトでは、フレームワークの挙動、開発および本番モードのサーバー、Node.jsとCloudflare Workersへのデプロイ先を対象とする数千件のテストを実施している。また、上流の変更によるリグレッションを検出するため、包括的なNext.jsテストスイートを毎晩Vinext上で実行している。移行プロセスには、プロジェクトの互換性、Viteの設定、デプロイ設定を確認する2つのコマンドが含まれており、従来のNext.jsプロジェクト構造を維持できる。コマンドはnpx vinext check、続いてnpx vinext initである。

Vinextは新規プロジェクトと既存プロジェクトで利用でき、npx @vinext/cloudflare deploy --warm-cacheコマンドを使えば、キャッシュウォームアップを有効にしてCloudflare Workersへデプロイできる。互換性マトリクスと、Cache Componentsなどの未完成の機能サポートは、複雑なアプリで移行を採用する前にチームが確認すべき点として残っている。

ニュースの出典
Cloudflare Blog
原文を開く ↗
c
著者

certi.news Editorial Team

同じカテゴリー

おすすめ記事

すべてのニュースを見る