Uncategorized

Uncategorized

NestJS Middleware: 클래스 vs 함수형

Middleware의 역할: Guard보다 먼저, 가장 원시적인 요청 가공 NestJS에서 Middleware는 라우트 핸들러에 도달하기 전 가장 먼저 실행되는 계층이다. Express/Fastify의 미들웨어와 […]

Uncategorized

Docker Multi-Stage Build 최적화

Docker Multi-Stage Build란 무엇인가 Docker Multi-Stage Build는 하나의 Dockerfile 안에서 여러 개의 FROM 문을 사용해 빌드 단계와 런타임 단계를 분리하는

Uncategorized

Spring Boot Profiles

Profile이 해결하는 문제: 환경별 설정 분리 개발, 스테이징, 프로덕션 환경은 데이터베이스 주소, 로그 레벨, 외부 API 엔드포인트가 다르다. 코드를 환경마다

Uncategorized

NestJS + MikroORM Events

MikroORM 이벤트 시스템 개요: 왜 Lifecycle Hook이 중요한가 운영 환경에서 엔티티가 생성·수정·삭제될 때 자동으로 타임스탬프를 기록하거나, 감사 로그를 남기거나, 관련

Uncategorized

Kubernetes Service: ClusterIP

Service가 필요한 이유: Pod IP의 불안정성 Kubernetes에서 Pod는 생성될 때마다 새로운 IP를 받는다. Deployment가 롤링 업데이트를 수행하면 기존 Pod는 삭제되고

Uncategorized

NestJS + TypeORM Soft Delete

왜 Soft Delete인가: 물리 삭제 대신 논리 삭제를 선택하는 이유 운영 환경에서 데이터를 DELETE FROM으로 물리 삭제하면 복구가 불가능합니다. 감사

Uncategorized

NestJS Guard: CanActivate

Guard가 하는 일: 요청의 실행 여부를 결정하는 단일 책임 NestJS에서 Guard는 요청이 라우트 핸들러에 도달하기 전에 “이 요청을 처리해도 되는가?”를

Uncategorized

MySQL InnoDB Buffer Pool 튜닝

왜 Buffer Pool 튜닝이 중요한가 InnoDB는 디스크 I/O를 줄이기 위해 데이터 페이지와 인덱스 페이지를 메모리에 캐싱한다. 이 캐시 영역이 Buffer

Uncategorized

NestJS + TypeORM 컬럼 타입

왜 컬럼 타입 설계가 중요한가 NestJS + TypeORM 프로젝트에서 @Column()은 가장 많이 쓰는 데코레이터입니다. 그러나 기본 string, number만 쓰다 보면

위로 스크롤
WordPress Appliance - Powered by TurnKey Linux