Moait
홈인기 피드모든 블로그모든 태그
홈인기 피드모든 블로그모든 태그
타입스크립트스럽게 성능과 생산성 두 마리 토끼 모두 잡기 섬네일

타입스크립트스럽게 성능과 생산성 두 마리 토끼 모두 잡기

데브시스터즈 favicon데브시스터즈·Architecture·
TypeScriptJavaScriptgRPCProtocol Buffers
2024년 09월 04일0

AI 요약

이 글은 AI가 요약했어요. 정확한 내용은 꼭 원문을 확인해 주세요!

핵심 요약

데브시스터즈가 프록시 기반 FE 클라이언트를 도입해 BE의 gRPC 호출을 동적으로 재현하고, code-gen 의존 없이 FE가 BE의 타입 시그니처를 그대로 사용할 수 있게 구현했습니다. 이를 통해 엔드포인트 작성 부담을 크게 줄이고 약 100만 줄의 JavaScript 코드를 삭제하는 성과를 얻었습니다.

구현 방법

  • 재귀형 Proxy로 경로를 추적하고 apply로 RPC를 '/grpc'로 전달
  • BE ApiClient 타입을 FE에서도 동일하게 사용 가능하도록 런타임 매핑 설계
  • JSON 기반 직렬화 로직 아이디어를 병행해 경량화 시도

주요 결과

  • 코드 규모 대폭 축소와 유지보수 비용 감소
  • code-gen 의존성 제거로 부팅/런타임 부담 감소
  • 엔드포인트 작성 필요성 감소로 개발 생산성 향상

연관 피드

%가 높을수록 이 글과 비슷할 가능성이 높아요!
난세의 영웅 gRPC 섬네일
71%

난세의 영웅 gRPC

딜리셔스 favicon딜리셔스·2022년 07월 11일
Scala for Game Server Development 섬네일
70%

Scala for Game Server Development

데브시스터즈 favicon데브시스터즈·2022년 10월 24일
No Image
69%

JavaScript Proxy를 활용한 상태 추적 도구 개발기

우아한형제들 favicon우아한형제들·2025년 06월 10일