RSCs En Producción: 1 Año Después

This ad is not shown to multipass and full ticket holders
JS Nation
JSNation 2026
June 11 - 15, 2026
Amsterdam & Online
The main JavaScript conference of the year
Upcoming event
JSNation 2026
JSNation 2026
June 11 - 15, 2026. Amsterdam & Online
Learn more
Bookmark
Rate this content
Sentry
Promoted
Code breaks, fix it faster

Crashes, slowdowns, regressions in prod. Seer by Sentry unifies traces, replays, errors, profiles to find root causes fast.

Theo Browne
Theo Browne
24 min
18 Jun, 2024

Comments

Sign in or register to post your comment.
  • Rishi Narang
    Rishi Narang
    HUB
    Is there any github link that shows the code mentioned in video?
Video Summary and Transcription
Esta charla explora la experiencia de implementar componentes de servidor en producción y destaca los beneficios y desafíos de usar Server Components en aplicaciones Next.js. La charla discute el despliegue de UploadThing y el uso de AppRouter para un uso seguro en producción. Profundiza en la implementación de diferentes diseños, la obtención de datos y la centralización del código para mejorar el rendimiento. La charla también cubre el uso de componentes de servidor para la optimización del rendimiento y el manejo de la latencia. Además, explora el uso de Edge y Lambda para el pre-renderizado parcial y los desafíos enfrentados con el rendimiento de webpack y la hidratación. En general, la charla enfatiza los beneficios y desafíos de trabajar con Server Components en aplicaciones Next.js.
Available in English: RSCs In Production: 1 Year Later

1. Introduction to UploadThing and Server Components

Short description:

Hola, soy Theo, un ingeniero que lanzó el proyecto UploadThing. Vamos a sumergirnos en la experiencia de enviar componentes de servidor en producción durante más de un año. Aprendimos mucho, tanto las cosas buenas como las terribles. React Summit merece un reconocimiento por esta oportunidad.

Hola, soy Theo. Probablemente me conozcas de YouTube, pero lo creas o no, también soy ingeniero. Sí, envío código. De hecho, lancé un proyecto realmente grande alrededor de esta época el año pasado. Puede que hayas oído hablar de él. Se llama UploadThing. Es una cosa para subir archivos. Esto es. Así es como se ve. Es, en mi opinión, la mejor manera de agregar carga de archivos a tu proyecto, pero eso no es de lo que estamos aquí para hablar hoy, tanto como me encantaría porque necesitamos profundizar en los componentes de servidor. Específicamente, ¿cómo ha sido enviar componentes de servidor en producción durante un poco más de un año ahora? Sí, nos lanzamos de lleno con AppRouter. Incluso nos lanzamos de lleno con Edge en este proyecto. Hay muchas cosas geniales que aprendimos, muchas cosas geniales que funcionaron muy bien, y por supuesto, un montón que funcionaron terriblemente. Quiero entrar en detalle sobre todas estas porque normalmente cuando haría esto en un video, nadie lo vería. Pero como los tengo a todos ustedes retenidos como rehenes en esta conferencia, podemos hablar de estas cosas con mucha más profundidad de lo que normalmente puedo. ¿No es emocionante? Un gran reconocimiento a React Summit por permitirme hacer esto, grabar el video, enviarlo con anticipación porque esto es un gran alivio de estrés. Ojalá pudiera haber estado allí en persona, pero con suerte, si todo va bien, el próximo año.

2. UploadThing Deployment and AppRouter

Short description:

Vamos a sumergirnos en UploadThing, una aplicación tradicional de Next.js desplegada con AppRouter. Dividimos los paquetes y la infraestructura en repositorios separados para hacer open source los paquetes. Hemos aprendido mucho a través de este proceso y mostraremos algunas de las cosas geniales que hemos descubierto. Aunque la mayoría de nuestras cosas todavía están en Vercel, estamos probando otras opciones de despliegue para ciertos componentes. También discutiremos AppRouter, que es crucial para usar Server Components de manera segura en producción. Si necesitas más información, revisa mis videos de YouTube sobre el enrutador de páginas en Next.js.

De todos modos, vamos a sumergirnos. Tengo toda una lista de lo bueno, lo malo y lo feo y quiero repasar todas estas partes.

Bien, lo primero es lo primero, ¿qué es esta aplicación y cómo se despliega? Bueno, UploadThing es una aplicación bastante tradicional de Next.js usando AppRouter. Podemos echar un vistazo en nuestra cuenta de Vercel PENG, ir a UploadThing y no verás nada demasiado emocionante aquí. Estábamos usando FileThing como nuestro nombre original, pero UploadThing es con lo que terminamos quedándonos. Está conectado a un repositorio de GitHub. Se despliega automáticamente. El repositorio de GitHub es donde las cosas empiezan a ponerse un poco más interesantes, porque el repositorio de GitHub es un monorepo.

Originalmente, teníamos los paquetes para UploadThing así como la infraestructura todo en un solo repositorio. Los separamos porque queríamos hacer open source todos los paquetes. Así que si tienes curiosidad sobre cómo funcionan los paquetes, no estamos hablando mucho de eso aquí. Todo eso es open source. Puedes sentirte libre de investigarlo. Así es como funciona nuestra infraestructura y hemos aprendido mucho al hacer esto y no puedo esperar para mostrar algunas de las cosas geniales que hemos aprendido.

Pero como dije, bastante tradicional, conectas esto a Vercel y se despliega automáticamente una vez que le dices en cuál de estos paquetes está el código, que está en infrared slash UploadThing server. Mira aquí, hemos estado probando otros lugares para desplegar más y más de nuestra infraestructura. Definitivamente hablaremos de eso a medida que avancemos porque aunque la mayoría de nuestras cosas todavía están completamente en Vercel, estamos usando otras piezas para otras cosas como gestionar nuestros buckets S3, gestionar nuestra capa de redirección sobre esos. Eso lo hemos estado haciendo por separado. Primero, vale la pena reconocer que esto no solo va a ser sobre Server Components porque también estamos usando AppRouter, que para ser franco, es la única forma real de usar Server Components de manera segura en producción ahora mismo. Así que sí, estamos en AppRouter más Server Components. Vamos a tener que hablar mucho sobre AppRouter para que esta sea una conversación justa. Si no estás ya familiarizado. Next.js reemplazó su enrutador, que era el enrutador de páginas, donde solo tenías archivos page.tsx aleatorios.

Bueno, realmente no eran page.tsx. Cualquiera que fuera el nombre del archivo, eso se convertía en la URL. Así que si tenías Theo.tsx, lo que exportaras allí se convertiría en page slash Theo. Ahora, estamos en AppRouter, que es una forma diferente de hacer las cosas. No quiero profundizar demasiado en cómo solían funcionar las cosas. Así que si necesitas aprender sobre eso, tengo montones de videos en mi canal de YouTube sobre cómo funcionaba el enrutador de páginas, cómo se comparaba con esto. Estoy esperando algún nivel de conocimiento de Next.js a medida que avanzamos.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Simplificando los Componentes del Servidor
React Advanced 2023React Advanced 2023
27 min
Simplificando los Componentes del Servidor
Top Content
React server components simplify server-side rendering and provide a mental model of components as pure functions. Using React as a library for server components allows for building a basic RSC server and connecting it to an SSR server. RSC responses are serialized virtual DOM that offload code from the client and handle interactivity. The client manifest maps serialized placeholders to real components on the client, enabling dynamic rendering. Server components combine the best of classic web development and progressive enhancement, offering the advantage of moving logic from the client to the server.
Explorando los fundamentos de los Componentes del Servidor React
React Day Berlin 2023React Day Berlin 2023
21 min
Explorando los fundamentos de los Componentes del Servidor React
Top Content
This Talk introduces React Server Components (RSC) and explores their serialization process. It compares RSC to traditional server-side rendering (SSR) and explains how RSC handles promises and integrates client components. The Talk also discusses the RSC manifest and deserialization process. The speaker then introduces the Waku framework, which supports bundling, server, routing, and SSR. The future plans for Waku include integration with client state management libraries.
Y Ahora Entiendes los Componentes del Servidor React
React Summit 2024React Summit 2024
27 min
Y Ahora Entiendes los Componentes del Servidor React
Top Content
In this Talk, Kent C. Dodds introduces React Server Components (RSCs) and demonstrates how to build them from scratch. He explains the process of integrating RSCs with the UI, switching to RSC and streaming for improved performance, and the benefits of using RSCs with async components. Dodds also discusses enhancements with streaming and server context, client support and loaders, server component rendering and module resolution, handling UI updates and rendering, handling back buttons and caching, and concludes with further resources for diving deeper into the topic.
Una Guía Práctica para Migrar a Componentes de Servidor
React Advanced 2023React Advanced 2023
28 min
Una Guía Práctica para Migrar a Componentes de Servidor
Top Content
React query version five is live and we'll be discussing the migration process to server components using Next.js and React Query. The process involves planning, preparing, and setting up server components, migrating pages, adding layouts, and moving components to the server. We'll also explore the benefits of server components such as reducing JavaScript shipping, enabling powerful caching, and leveraging the features of the app router. Additionally, we'll cover topics like handling authentication, rendering in server components, and the impact on server load and costs.
Componentes del Servidor: La Épica Historia de Renderizar UX
React Summit 2023React Summit 2023
26 min
Componentes del Servidor: La Épica Historia de Renderizar UX
Top Content
This Talk introduces server components in React, which provide an intermediate format for rendering and offer advantages for both client-side and server-side rendering. Server components reduce bundle size on the client and improve search engine optimization. They abstract the rendering process, allowing for faster rendering and flexibility in choosing where to render components. While server components are still in the experimental stage, Next.js is a good starting point to try them out.
Componentes de Servidor React
React Day Berlin 2023React Day Berlin 2023
27 min
Componentes de Servidor React
React server components solve the problem of interrupting user interfaces caused by CPU-bound or network-bound web applications. They allow for read-only content to be rendered on the server and interactive elements to be shipped to the client, reducing code shipped and improving performance. Server-side rendering and server-side fetching improve the user experience by reducing delays and flash of unstyled content. Soft navigation with server components enables re-rendering without hard navigation, and using frameworks like Next.js helps with debugging and deployment challenges.

Workshops on related topic

Dominando React Server Components y Server Actions en React 19
React Summit US 2024React Summit US 2024
150 min
Dominando React Server Components y Server Actions en React 19
Featured Workshop
Maurice de Beijer
Maurice de Beijer
¡Llamando a todos los desarrolladores de React! Únete a nosotros para una masterclass inmersiva de 4 horas profundizando en React Server Components y Server Actions. Descubre cómo estas tecnologías revolucionarias están transformando el desarrollo web y aprende a aprovechar todo su potencial para construir aplicaciones rápidas y eficientes.

Explora el mundo de React Server Components, combinando sin problemas el renderizado del lado del servidor con la interactividad del lado del cliente para un rendimiento y experiencia de usuario incomparables. Sumérgete en React Server Actions para ver cómo combinan la interactividad del lado del cliente con la lógica del lado del servidor, facilitando el desarrollo de aplicaciones interactivas sin las limitaciones tradicionales de las API.

Obtén experiencia práctica con ejercicios prácticos, ejemplos del mundo real y orientación experta sobre la implementación de estas tecnologías en tus proyectos. Aprende temas esenciales como las diferencias entre Server y Client Components, optimización de la obtención de datos, pasando datos de manera efectiva y maximizando el rendimiento con nuevos hooks de React como useActionState, useFormStatus y useOptimistic.

Ya sea que seas nuevo en React o un profesional experimentado, esta masterclass te equipará con el conocimiento y las herramientas para elevar tus habilidades de desarrollo web. Mantente a la vanguardia y domina la tecnología de vanguardia de React 19. No te lo pierdas: ¡regístrate ahora y desata todo el poder de React!
Explorando la Representación del Lado del Servidor
React Advanced 2025React Advanced 2025
179 min
Explorando la Representación del Lado del Servidor
Featured Workshop
Krasimir Tsonev
Krasimir Tsonev
La representación del lado del servidor (SSR) está de vuelta en el centro de atención, y React está evolucionando rápidamente. En este masterclass, profundizaremos en la mecánica, las compensaciones de rendimiento y las técnicas modernas de SSR con React.js. Comenzarás construyendo una aplicación SSR desde cero, sin frameworks, solo renderToString y hydrateRoot en bruto, para comprender verdaderamente cómo React se representa en el servidor y se hidrata en el cliente. A partir de ahí, actualizaremos a las capacidades de transmisión de React 18 usando renderToPipeableStream, implementaremos la hidratación selectiva usando Suspense e integraremos la obtención de datos directamente en el ciclo de representación del servidor. Veremos los React Server Components (RSC), mostrando cómo complementan el SSR. También cubriremos estrategias de hidratación, cómo prevenir desajustes y cómo almacenar en caché o transmitir HTML de manera efectiva para un rendimiento en el mundo real. Finalmente, llevaremos nuestro trabajo manual de SSR a frameworks de producción como Next.js.
Next.js 13: Estrategias de Obtención de Datos
React Day Berlin 2022React Day Berlin 2022
53 min
Next.js 13: Estrategias de Obtención de Datos
Top Content
Workshop
Alice De Mauro
Alice De Mauro
- Introducción- Prerrequisitos para la masterclass- Estrategias de obtención: fundamentos- Estrategias de obtención – práctica: API de obtención, caché (estática VS dinámica), revalidar, suspense (obtención de datos en paralelo)- Prueba tu construcción y sírvela en Vercel- Futuro: Componentes de servidor VS Componentes de cliente- Huevo de pascua de la masterclass (no relacionado con el tema, destacando la accesibilidad)- Conclusión
La Puerta al Backend: Guía del Desarrollador Frontend para el Desarrollo Full-Stack
React Summit US 2023React Summit US 2023
160 min
La Puerta al Backend: Guía del Desarrollador Frontend para el Desarrollo Full-Stack
Top Content
WorkshopFree
Amy Dutton
Amy Dutton
Esta masterclass te guiará a través del ciclo de vida del desarrollo de productos para crear una aplicación web del mundo real. Aprenderás sobre los Componentes del Servidor React, construyendo un sistema de diseño dentro de Storybook, y utilizando el desarrollo frontend para acercarte a convertirte en un desarrollador full-stack. La masterclass cubrirá el aumento de la confianza en tu aplicación con pruebas unitarias e implementando autenticación y autorización. Tendrás la oportunidad de trabajar a través de las características del producto y examinar un proyecto real de RedwoodJS, obteniendo valiosa experiencia en el desarrollo de productos del mundo real. RedwoodJS hace que sea simple acercarse al desarrollo full-stack, y esta masterclass te dará las habilidades que necesitas para crear tus propias aplicaciones web del mundo real.
Patrones Avanzados de Despliegue de Aplicaciones con Componentes de Servidor React (feat. un Marco RSC DIY)
React Summit US 2023React Summit US 2023
104 min
Patrones Avanzados de Despliegue de Aplicaciones con Componentes de Servidor React (feat. un Marco RSC DIY)
Top Content
Workshop
 Greg Brimble
Greg Brimble
El ecosistema de desarrolladores siempre está avanzando rápidamente y este año no ha sido una excepción. Los Componentes de Servidor React pueden ofrecer una mejora significativa a la experiencia del desarrollador y al rendimiento de la aplicación. Pero creo que es justo decir que este nuevo paradigma de servidor primero puede ser complicado de entender!En la primera mitad de esta masterclass, exploraremos los Componentes de Servidor React desde cero: construyendo nuestro propio mini marco meta para ayudarnos a entender cómo funcionan los RSCs. Descubriremos exactamente qué se produce en una construcción RSC y conectaremos esas piezas para formar una aplicación completa.A continuación, ¡lo desplegaremos! Cloudflare también ha tenido un año ocupado — Smart Placement, en particular, es una nueva tecnología que hemos desarrollado que se ajusta perfectamente al modelo RSC. Exploraremos por qué eso tiene sentido para nuestra aplicación de masterclass, y realmente lo desplegaremos en la Plataforma de Desarrolladores de Cloudflare.Finalmente, ampliaremos un poco más nuestra aplicación, utilizando D1 (nuestra base de datos SQL sin servidor) para mostrar realmente el poder del Componente de Servidor React cuando se combina con Smart Placement.Deberías salir de esta masterclass con una mayor comprensión de cómo funcionan los Componentes de Servidor React (tanto detrás de las escenas como también cómo tú como desarrollador puedes usarlos día a día), así como una visión de algunos de los nuevos patrones de despliegue que ahora son posibles después de las recientes innovaciones en el espacio de la plataforma.
Construyendo Componentes de Servidor Reutilizables en NextJS
React Summit US 2023React Summit US 2023
88 min
Construyendo Componentes de Servidor Reutilizables en NextJS
Top Content
Workshop
Will Bishop
Mettin Parzinski
2 authors
React continúa evolucionando su capacidad beta, los Componentes de Servidor de React, y continúan desarrollándolos en asociación con marcos como NextJS.En esta masterclass, los asistentes aprenderán qué son los Componentes de Servidor de React, cómo construirlos y usarlos eficazmente en NextJS, y se centrarán en una de las principales ventajas de React/NextJS: la reutilización a través de componentes.También cubriremos tecnologías beta relacionadas habilitadas por el directorio `app`, como los layouts anidados y las acciones del servidor (capacidad alfa/experimental).¡Únete a nosotros para esta masterclass práctica de 120 minutos!Tecnologías:
React, JavaScript/Typescript, NextJS, Miro