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만 쓰다 보면

Uncategorized

Spring Boot HikariCP 커넥션 풀

들어가며: “커넥션 풀이 다 찼습니다” — 가장 흔한 운영 장애 Spring Boot 애플리케이션에서 HikariPool-1 – Connection is not available, request

Uncategorized

NestJS + TypeORM QueryBuilder

왜 QueryBuilder를 깊이 알아야 하는가 TypeORM의 find() 계열 메서드는 간단한 CRUD에 적합하지만, 서브쿼리, 복합 조건, 집계, Raw SQL 표현식이 필요한

Uncategorized

Terraform lifecycle

들어가며: “terraform apply 했더니 리소스가 삭제됐다가 다시 생성됐어요” Terraform을 운영에서 쓰다 보면, 인프라 변경이 예상과 다르게 동작하는 순간이 온다. 보안

Uncategorized

NestJS Pipe·Validation

들어가며: “어? 이 필드가 왜 string이죠?” NestJS 컨트롤러에서 DTO를 받았는데, 숫자여야 할 price가 문자열로 들어온다. 또는 존재하지 않는 필드가 그대로

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