Aller au contenu
Contre-Jour
Terrains
Tech & Dev

Next.js 16 : ce qui change vraiment pour vos projets

Sortie standalone par défaut, instrumentation stabilisée, custom server déconseillé : un tour concret des changements qui affectent vos décisions d'architecture.

Léo Deroin1 min de lecture
Sommaire2
  1. Le custom server, de moins en moins justifié
  2. Démarrer une tâche au boot avec instrumentation.ts

En bref

Next.js 16 pousse plus fort vers output: "standalone" et instrumentation.ts pour tout ce qui tournait avant sur un custom server — sauf besoin réel de WebSocket, il n'y a plus de raison d'en garder un.

Le custom server, de moins en moins justifié

Pendant longtemps, un server.js maison était le réflexe pour brancher Socket.io, un cron, ou une logique de démarrage custom. Le problème : un custom server désactive output: "standalone", et donc l'image Docker minimale qui va avec.

À retenir

  • instrumentation.tsregister() tourne une fois au boot, compatible standalone
  • Un custom server reste utile seulement pour un vrai serveur WebSocket dédié
  • output: "standalone" réduit franchement la taille de l'image Docker finale

Démarrer une tâche au boot avec instrumentation.ts

instrumentation.tsts
export async function register() {
  if (process.env.NEXT_RUNTIME === "nodejs") {
    const { initializeCron } = await import("./src/server/cron");
    initializeCron();
  }
}

Piège fréquent

register() doit terminer avant que le serveur n'accepte des requêtes — évitez d'y mettre une tâche longue et bloquante, préférez y démarrer un scheduler (node-cron) qui tournera ensuite en tâche de fond.

output: standaloneCustom server
Taille image DockerMinimalenode_modules complet
WebSocket natifNonOui
Code au bootinstrumentation.tsAvant app.prepare()

Pas directement dans le même process — il faut un service séparé (ou une solution managée type Pusher/Ably) plutôt qu'un custom server intégré.

Léo Deroin

Sous la responsabilité de

Léo Deroin

Développeur Fullstack

Développeur fullstack basé à Lyon, en alternance chez Confluent Digital et en Master Ingénierie du Web à l'ESGI. Stack de prédilection : PHP/Symfony et TypeScript/React/Next.js. Relit et valide chaque article publié ici.

Comment cet article a été écrit

Partager :

La suite arrive par mail

Un mail quand un article paraît, rien d'autre. Tu choisis tes terrains, et tu te désabonnes en un clic.

Commentaires