RSCs In Production: 1 Year Later
summary
Upload Thing runs React Server Components with Next.js App Router in production after a year, deployed to Vercel and split between Lambda and an edge runtime to avoid cold starts. Data layer uses Drizzle (Prisma added 1–2s cold starts), RPC uses trpc, analytics with PostHog, and hundreds of SVG patterns are rendered server‑side so they never bloat client bundles. Streaming + Suspense yields three or less round trips, but two runtimes, slow webpack dev servers awaiting TurboPack, hydration bugs, and an SSR JSON dump workaround are real pains; partial pre-rendering is planned.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:11Upload Thing deployment
- 3:39App Router root layout
- 6:29Data fetching with RSCs
- 9:40Bundle size benefits
- 12:12Suspense and streaming
- 15:41Performance compromises
- 18:46Partial pre-rendering edge
- 19:49Replacing actions with tRPC
- 21:33Hydration issues
- 23:16Final thoughts
related talks
48mReact Server Components: A New Way to Build Fast and Interactive Web Apps
42mReact Server Components under production load
47mReact, Rendering, Performance
22mServing content on the web: from PHP to RSC—and beyond
21mAnd Now You Understand React Server Components
54mReact Server Components: A New Way to Build Fast and Interactive Web Apps
31mReact Server Components Elevating Speed, Interactivity, and User Experience
25mThe Costs & Benefits of React Server Components
