태그: Backend
17편
-
Supabase + Next.js 실전: @supabase/ssr 클라이언트 설정과 RLS가 핵심인 이유
Next.js에서 @supabase/ssr로 서버용·브라우저용 클라이언트를 나눠 만들고 인증, PostgREST 쿼리, postgres_changes 실시간 구독, 스토리지, Deno 기반 Edge Functions를 붙이는 흐름을 짚습니다. auth.uid() RLS 정책 예시도 담았습니다.
-
MQTT 프로토콜과 발행-구독 메시징 모델 이해하기
MQTT의 Pub/Sub 구조와 Broker·Topic 개념, QoS 0/1/2 차이, Last Will·Retained Message 같은 실무 기능을 Python·Node.js 예제로 설명합니다.
-
Redis로 캐싱과 세션 관리: 데이터 타입, 캐싱 전략, Pub/Sub, 트랜잭션, API 응답 캐싱
String·Hash·List·Set·Sorted Set을 Node.js 클라이언트로 다루고 Cache-Aside와 캐시 무효화, Pub/Sub, MULTI/EXEC 트랜잭션, API 응답 캐싱과 리더보드를 구현합니다. Pipeline, INCR 레이트 리밋, maxmemory-policy도 설명합니다.
-
MongoDB 입문: SQL과의 차이, CRUD, Mongoose, 집계 파이프라인, 인덱싱과 성능
MongoDB를 처음 쓸 때 SQL과 다른 문서 모델, 드라이버 CRUD, Mongoose 스키마, 집계 파이프라인, 부분·텍스트 인덱스, 복제 세트와 트랜잭션을 다루고, 전자상거래 주문·매출 분석·재고 동시성 제어 예제로 설계 판단을 연습합니다.
-
NestJS로 백엔드 만들기: 모듈·컨트롤러·서비스, DTO 검증, TypeORM, 가드·인터셉터
NestJS로 백엔드를 개발하는 방법. Express·Koa와의 차이, 모듈·컨트롤러·서비스 구조와 의존성 주입, DTO 유효성 검사, CLI로 CRUD 생성, TypeORM 연동, 가드·인터셉터·예외 필터, 문서화를 다룹니다.
-
GraphQL API 만들기: 스키마와 리졸버, 뮤테이션, DataLoader로 N+1 해결, Apollo Client
GraphQL로 API를 만드는 방법. REST 대비 장점, 스키마와 리졸버, 쿼리와 뮤테이션, DataLoader로 N+1 문제 해결, Apollo Client 사용, Subscription 실시간 데이터를 예제로 다룹니다.
-
FastAPI로 Python API 만들기: 타입 검증, 의존성 주입, SQLModel·asyncpg, JWT, 배포
FastAPI 정리. Pydantic과 타입 힌트 기반 자동 검증, OpenAPI 문서, 의존성 주입, SQLModel·asyncpg 데이터베이스, JWT 인증, CORS, 백그라운드 태스크, uvicorn·Docker 배포를 예제로 다룹니다.
-
WebSocket 실시간 통신: RFC 6455 업그레이드와 프레임, Socket.io 채팅, Redis 확장, 프로덕션 디버깅
WebSocket으로 실시간 통신을 구현하는 방법. 프로토콜 업그레이드와 프레임, 하트비트, 기본 WebSocket API, Socket.io, 채팅 앱 예제, Redis로 여러 서버 확장, 프로덕션에서만 연결이 끊기던 디버깅 사례를 다룹니다.
-
Socket.IO 실시간 통신: Room과 Broadcasting, Namespace, 인증, React 연동, Redis Adapter
Socket.IO로 실시간 통신을 구현하는 방법. 설치와 기본 사용, Room, Broadcasting, Namespace, 인증, React 통합, Redis Adapter로 여러 서버 확장을 예제로 정리합니다.
-
Spring Boot로 REST API 만들기: JPA, Spring Security, Validation, 예외 처리, 테스트, 배포
Spring Initializr로 프로젝트를 만들고 H2로 개발 환경을 잡은 뒤 REST 컨트롤러, JPA 엔티티와 리포지토리, Spring Security, Bean Validation, 전역 예외 처리, 테스트와 Docker 배포까지 한 흐름으로 구현합니다.
-
Stripe 결제 연동: Checkout, Payment Intent 상태와 SCA, Webhook 서명 검증, 멱등성 키, 구독
Stripe 결제 연동 정리. Checkout Session, Payment Intent 상태 머신과 SCA, Webhook HMAC 서명 검증, Idempotency-Key, 구독 결제, 프로덕션 멱등 처리와 대사 패턴을 실전 중심으로 다룹니다.
-
Sanity CMS로 콘텐츠 관리하기: Schema 정의, GROQ 쿼리, Next.js 통합, 이미지, 실시간 업데이트
Sanity 프로젝트를 만들고 Post 스키마를 코드로 정의한 뒤, GROQ로 필드 선택·참조 조인·파라미터 쿼리를 작성하고 Next.js에서 목록과 상세 페이지, next-sanity 이미지 최적화, 실시간 업데이트를 구현하는 과정을 다룹니다.
-
PocketBase로 백엔드 빠르게 만들기: 단일 실행 파일, SQLite, 인증, 실시간 구독, 파일 업로드
단일 실행 파일로 PocketBase를 띄우고 Admin UI에서 컬렉션을 만든 뒤, JavaScript SDK로 CRUD, 이메일·OAuth 인증, React 실시간 구독, 파일 업로드를 구현하고 Docker로 배포하는 과정을 설명합니다.
-
Laravel로 웹 앱 만들기: 라우팅, Eloquent ORM, Blade, Middleware, Queue, 배포
Laravel로 웹 앱을 만드는 방법. 프로젝트 생성, 라우팅, Eloquent ORM, Controller, Blade 템플릿, Middleware, Queue 비동기 작업, Artisan CLI와 배포를 예제로 정리합니다.
-
Go로 웹 API 만들기: Gin 라우팅, GORM, JWT 인증, 미들웨어, 동시성과 배포
Go로 웹 API를 만드는 흐름을 Gin 라우팅과 기본 서버, GORM 모델 정의와 PostgreSQL 연결, CRUD 엔드포인트, JWT 발급과 인증 미들웨어, 고루틴과 채널을 쓴 동시 처리, Docker 배포 순서로 따라갑니다. Node.js와의 비교도 다룹니다.
-
Clerk로 Next.js 인증 붙이기: 로그인 컴포넌트, 보호 라우트, Webhook, 조직 관리
Next.js에 Clerk를 붙여 middleware로 경로를 보호하고, SignIn·UserButton 컴포넌트, 서버·클라이언트 컴포넌트별 인증 확인, API Route 보호, svix 서명을 검증하는 Webhook 사용자 동기화, 조직 권한 확인을 구현합니다.
-
Convex로 실시간 백엔드 만들기: 스키마, Query와 Mutation, Action, 파일 스토리지
Convex에서 스키마를 정의하고 Query와 Mutation을 작성한 뒤 React의 useQuery로 실시간 구독을 붙이고, 외부 API 호출은 Action으로 분리하며, 파일 스토리지에 업로드하는 흐름을 예제로 따라갑니다.