태그: Web-API
13편
-
tRPC: End-to-End 타입 안전 API, 미들웨어·Zod·React Query 통합과 REST 비교
tRPC procedure로 query·mutation·subscription을 정의하고 Router와 Context를 구성한 뒤 인증·로깅 미들웨어, Zod 입출력 검증, React Query 연동과 캐시 무효화, HTTP 배치, WebSocket 구독을 설명합니다. Todo 앱 예제도 담았습니다.
-
GraphQL API 만들기: 스키마와 리졸버, 뮤테이션, DataLoader로 N+1 해결, Apollo Client
GraphQL로 API를 만드는 방법. REST 대비 장점, 스키마와 리졸버, 쿼리와 뮤테이션, DataLoader로 N+1 문제 해결, Apollo Client 사용, Subscription 실시간 데이터를 예제로 다룹니다.
-
tRPC로 서버·클라이언트 타입 공유하기: Router·Procedure, 미들웨어, React Query, App Router, Zod
initTRPC로 진입점을 만들고 Router를 나눴다 합치는 구조, Context와 미들웨어 실행 순서, createTRPCReact와 Provider 구성, 캐시 무효화, Next.js App Router 연동, WebSocket 구독, Zod 검증과 TRPCError 처리까지 순서대로 구현합니다.
-
Bun에서 Elysia로 API 만들기: 스키마 검증, Eden Treaty 타입 공유, 플러그인, OpenAPI
Bun 위에서 Elysia로 라우트와 t 스키마 검증을 작성하고, Eden Treaty로 서버 타입을 클라이언트와 공유하는 방법을 다룹니다. 플러그인 구성, WebSocket과 SSE, Drizzle ORM 연동, OpenAPI 문서 자동 생성, 보안·운영 체크리스트까지 이어집니다.
-
Hono로 엣지 API 만들기: 라우팅·미들웨어, Workers·Deno·Bun 배포, D1·JWT·CORS
Hono의 라우팅·미들웨어, Cloudflare Workers·Deno·Bun 배포, D1 batch 트랜잭션과 Prisma 어댑터, 4.11.4부터 alg가 필수가 된 JWT 미들웨어, CORS, RPC 타입 공유와 Workers에서 전역 상태가 공유되지 않는 함정까지 정리합니다.
-
Meilisearch 설계와 튜닝: 랭킹 규칙, 오타 허용·동의어, 다국어, Algolia와 비교
Meilisearch의 인덱스·문서·필터·랭킹 규칙·오타 허용·동의어·다국어 설정을 정리하고, React·Next.js 연동과 Algolia 대비까지 실무 관점으로 설명합니다. Meilisearch는 Rust로 구현된 오픈소스 검색 엔진으로, 전자상거래·콘텐츠·SaaS 대시보드 등에서 흔히 요구되는 빠른 자동완성형 검색을 단일 프로세스(또는 소규모 클러스터)로 제공합니다.
-
Nitro 서버 엔진: 파일 기반 API 라우팅, 캐싱과 하이브리드 렌더링, 여러 런타임 배포
Nuxt와 Analog가 쓰는 Nitro 서버 엔진의 H3 이벤트 모델과 파일 기반 API 라우팅, routeRules로 경로별 캐싱과 하이브리드 렌더링을 나누는 방법, Vercel·Netlify·AWS Lambda 프리셋 배포와 Unstorage·WebSocket을 다룹니다.
-
Axum으로 Rust REST API 만들기: Tower 서비스 스택, Extractor, 상태·에러 처리
Tokio·Tower·Hyper 위에서 동작하는 Axum으로 REST API를 만들며 라우팅, Path·Json Extractor 조합, Tower Layer 미들웨어, AppState와 FromRef 상태 공유, IntoResponse 기반 에러 처리, WebSocket 업그레이드를 익힙니다.
-
VS Code 확장 만들기: Commands 등록, WebView, 언어 지원, 설정, Marketplace 배포
VS Code 확장을 개발하는 방법. 프로젝트 설정, 기본 확장 구조, Commands, WebView, 언어 지원과 Language Server, 설정 기여, Marketplace 배포를 예제로 정리합니다.
-
TanStack Query 캐싱이 실제로 동작하는 방식: staleTime·gcTime, select로 리렌더 줄이기, 커스텀 훅
TanStack Query(React Query)로 서버 상태를 관리하는 방법. 캐싱 동작 원리, useQuery와 useMutation, Optimistic Update, 무한 스크롤과 Prefetch, 커스텀 훅 캡슐화, select와 staleTime으로 리렌더 줄이기를 다룹니다.
-
gRPC로 서비스 간 통신하기: Protocol Buffers, Unary·Streaming RPC, Node.js·Go 구현
gRPC로 고성능 API를 만드는 방법. Protocol Buffers와 서비스 정의, Unary·Streaming RPC, Node.js와 Go 구현, 에러 처리, 인증, 배포를 예제로 정리합니다.
-
Axios 실전: 인스턴스·인터셉터 설계와 401 토큰 갱신 무한 루프 막기
Axios 인스턴스와 요청·응답 인터셉터로 토큰 주입과 공통 에러 처리를 구성하고, 401 응답 뒤 토큰 갱신이 무한 루프에 빠지지 않게 하는 패턴, AbortController 요청 취소, TypeScript 타이핑을 예제로 다룹니다.
-
C++ Facade 패턴: 복잡한 서브시스템 앞에 단순한 진입점 두기와 Pimpl·CRTP 변형
C++ Facade 패턴으로 복잡한 서브시스템을 단순한 인터페이스로 감싸는 방법. 멀티미디어·데이터베이스 예제, Pimpl 컴파일 방화벽, 가상 디스패치 비용, 템플릿·CRTP 기반 정적 파사드를 정리합니다.