Obtención de datos en paralelo, secuencial y mediante streaming
Optimice la carga de datos de App Router obteniéndolos en paralelo, comprendiendo cuándo es necesario hacerlo de forma secuencial y usando streaming con Suspense.
Obtención de datos en paralelo, secuencial y mediante streaming es una lección gratuita de Next.js 15 Fullstack (App Router + Server Actions) en CoddyKit. Esta es la lección 3 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Next.js 15 Fullstack (App Router + Server Actions), y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Next.js 15 Fullstack (App Router + Server Actions) incluye 3 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
Two Fetching Shapes
Server Components can fetch data sequentially (one waits for another) or in parallel (all at once). Choosing well dramatically affects load time.
Sequential Fetching
Sometimes one request depends on another result, forcing order. This creates a waterfall and is slower.
const user = await getUser(id);
const posts = await getPosts(user.teamId); // needs user firstParallel Fetching
Independent requests should start together. Initiate the promises, then await them with Promise.all.
const userP = getUser(id);
const postsP = getPosts(id);
const [user, posts] = await Promise.all([userP, postsP]);Avoiding Waterfalls
An accidental waterfall happens when you await each fetch on its own line even though they are independent. Kick them off before awaiting.
Streaming with Suspense
You do not have to wait for everything. Wrap slow parts in Suspense so fast content streams to the user immediately.
import { Suspense } from "react";
<Suspense fallback={<Spinner />}>
<SlowComponent />
</Suspense>loading.tsx is Suspense
The special loading.tsx file is automatically a Suspense boundary for the whole route segment, giving an instant loading state.
Granular Streaming
Place multiple Suspense boundaries so each section reveals as soon as its own data is ready, instead of blocking on the slowest one.
Fetching at the Leaf
In RSC you can fetch data exactly where it is needed (in the component that uses it). React dedupes identical requests, so colocated fetches are fine.
Request Memoization
Next.js memoizes fetch calls with the same URL/options within a single render pass, so calling it in multiple components does not hit the network twice.
Preloading Data
You can start a fetch early (a preload function called before render) to overlap network time with rendering of other parts.
export function preload(id) { void getUser(id); }Picking a Strategy
Default to parallel + colocated fetching; add Suspense boundaries around slow, independent sections; only go sequential when a real data dependency exists.
Quick Check
How do you avoid a data fetching waterfall for two independent requests?
Recap
You learned to fetch in parallel with Promise.all, avoid accidental waterfalls, and use Suspense (including loading.tsx) to stream UI progressively. Next.js memoizes fetches, so colocated leaf fetching is efficient.
Preguntas frecuentes
¿La lección «Obtención de datos en paralelo, secuencial y mediante streaming» es gratis?
Sí — el texto completo de «Obtención de datos en paralelo, secuencial y mediante streaming» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Next.js 15 Fullstack (App Router + Server Actions), actualiza a CoddyKit PRO. El curso de Next.js 15 Fullstack (App Router + Server Actions) incluye 3 lecciones en total.
¿Qué aprenderé en «Obtención de datos en paralelo, secuencial y mediante streaming»?
Optimice la carga de datos de App Router obteniéndolos en paralelo, comprendiendo cuándo es necesario hacerlo de forma secuencial y usando streaming con Suspense. Practicas Next.js 15 Fullstack (App Router + Server Actions) con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Next.js 15 Fullstack (App Router + Server Actions)?
No se requiere experiencia previa. Next.js 15 Fullstack (App Router + Server Actions) en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 3.
¿Cuánto tiempo toma la lección «Obtención de datos en paralelo, secuencial y mediante streaming»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Next.js 15 Fullstack (App Router + Server Actions)?
Sí. Cada lección de Next.js 15 Fullstack (App Router + Server Actions) incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Obtención de datos en el servidor
- Almacenamiento en caché y revalidación
- Obtención de datos en paralelo, secuencial y mediante streaming