Next.jsチームは最近、静的サイト生成フレームワークのバージョン8をリリースしました。AWS lambdaやZEIT Now lambdasなどのクラウドサービスで使用するためにアプリケーションを小さな部品に分割することで信頼性とスケーラビリティを向上させた。
サーバレスアーキテクチャは、障害ポイントの分散化、スケーラビリティの向上、およびアプリケーションで消費される計算時間に対してのみの支払いでより手頃なため、使用が増えている。
Next.js内のサーバレスモードは、単純なtarget: "serverless"
設定フラグで有効化でき、静的サイトのページごとにラムダが生成されるようになる。異なるクラウド機能サービスの多様化により、開発者は互換性レイヤで構築されたNext.jsサーバレスからの出力をラップした方がよいだろう。
Next.jsチームは、サーバレスデプロイのための低レベルAPIとしてのサーバレス実装の利点を強調する。各ページは、依存関係のない高速コールドスタート用に最適化された小さなサーバレス関数になる。
このリリースの一環として、Next.jsチームはwebpackの改善にも貢献し、ビルドパフォーマンスとリソース使用率を大幅に改善した。Next.js 8は次のように発表している。
この努力により、パフォーマンスを低下させることなく最大16倍効率的にメモリを使えるようになりました。メモリはもっと早く解放され、そして多くのストレス(多くのページ)の下でプロセスはもうクラッシュしません。
Next.js 8はまた、そのルータがより速いユーザナビゲーションのためのページのプリフェッチを許容するため、パフォーマンスが向上している。そこでは、別の<script>
タグの代わりに<link rel="preload">
を持つprefetch属性を含むすべてのリンクに対してJavascriptバンドルをプリフェッチする。onload
イベントの後にプリフェッチが開始されるようになり、ブラウザがリソースをより効率的に管理できるようになった。遅い2Gネットワーク接続では、プリフェッチは無効になる。
Next.js 8では、開発中のページのみを対象とした自動コンパイル、開発中のポートリスニングの高速化、静的エクスポートの高速化など、一連の開発者エクスペリエンスの向上も提供されている。これらの各変更により、Next.jsを扱う開発者の待ち時間が短縮される。
Next.jsはMITライセンスの下で利用可能なオープンソースソフトウェアである。コントリビューションとフィードバックはNext.js GitHubプロジェクトを通して奨励されており、Next.jsコントリビューションガイドラインに従ってください。