안녕하세요, 토스뱅크 프론트엔드 개발자 이다용입니다.토스뱅크 프론트엔드에서는 Next.js Pages Router를 주로 사용해요. 그런데 Pages Router는 유지보수 모드예요. 보안 패치와 버그 수정은 이어지지만 새 기능은 들어오지 않죠. 언젠가 다음에 쓸 것을 정해야 했고, 가장 먼저 살펴본 선택지가 App Router와 React Server Components(RSC)였어요. 필요한 데이터를 컴포넌트마다 가져오고, 준비된 영역부터 보여준다는 점이 매력적이었거든요.2025년 가을, 프레임워크에 관심 있는 동료들이 모여 기술그룹을 만들었어요. 현구님, 지우님, 현웅님과 실제 서비스를 옮겨보고 매주 막히는 지점을 공유했어요.결론은 도입하지 않는 것이었어요. 저희 화면에서 얻을 수 있는 이득에 비해, 서비스의 안정성을 지키며 전환하고 유지하는 비용이 컸거든요.어떻게 그 결론에 닿았는지, 검토 과정에서 마주한 질문들을 따라 이야기해볼게요.준비된 것부터 보여주면 더 좋을까요?기존에는 서버에서 화면을 그릴 때 필요한 데이터를 getServerSideProps 한 곳에서 모아 가져왔어요. 페이지 단위로만 쓸 수 있다 보니, 저희 구현에서는 API 하나가 실패하면 정상적으로 받은 데이터까지 다시 요청하는 경우가 있었어요.App Router에서는 데이터를 가져오는 컴포넌트를 나누고 각각을 Suspense로 감싸, 준비된 영역부터 보여줄 수 있어요.import { Suspense } from 'react'; export default function Page() { return ( <> <Suspense fallback={<AccountSkeleton />}> <AccountSection /> </Suspense> <Suspense fallback={<BannerSkeleton />}> <BannerSection /> </Suspense> </> ); }토스뱅크의 화면은 대부분 토스 앱 안의 웹뷰로 이뤄져 있고, 요소가 주로 세로 한 줄로 쌓여요. 이 구조에서도 영역을 따로 보여주는 것이 자연스러운지 직접 재봤어요.세 영역에 각각 1초, 3초, 5초 지연을 주고, 브라우저가 화면을 언제 그리는지 녹화했어요. 웹뷰는 대부분 안드로이드에서 Chromium, iOS에서 WebKit으로 돌아가기 때문에 두 엔진을 함께 ...
App Router의 장점은 우리에게도 장점일까요?
4 hours ago
2
Related
Show HN: LLM 어텐션 시각화
26 minutes ago
0
대규모 언어 모델은 적응적 탐색을 통해 새로운 사회적 편향을 형성함
29 minutes ago
0
AI도 의식을 가질 수 있을까: ‘의식의 어려운 문제’가 다시 중요해진 이유
1 hour ago
0
내 PC가 AI 데이터센터가 된다: 유휴 컴퓨팅 자원의 새로운 수익화
1 hour ago
1
저작권은 이익보다 해악이 크므로 폐지해야 함
2 hours ago
1
나비에–스토크스 밀레니엄 상금 문제
2 hours ago
1
수학자에게 Lean이 있다면 개발자에게는 TLA+가 있다
2 hours ago
1
OpenAI, 수학 난제 해결 경쟁에서 부당한 수단을 썼다는 의혹
3 hours ago
0
Tips
click
Popular
[팟캐스트] OAuth, 제대로 이해하고 쓰고 있나요?
2 weeks ago
81
고철
2 weeks ago
75
연상호, 토론토영화제서 고레에다 감독과 대담
2 weeks ago
68
‘붉은사막’, 게임스컴 어워드 에픽·최고의 PC 게임 후보작 올라
2 weeks ago
64
잔나비, 첫 아시아 투어 곳곳서 떼창 물결…"기적같은 일"
2 weeks ago
61
김재윤 통산 220세이브…삼성, 2연패 탈출
2 weeks ago
61
취준생 목소리에 귀기울인 '라이너 라이트'..."자소서 기능 이용자 수 13배 늘...
2 weeks ago
60
LinkedIn CringeBot 3000
3 weeks ago
59
© Clint IT 2026. All rights are reserved







English (US) ·