NestJS CQRS: CommandBus
NestJS에서 @nestjs/cqrs 패키지는 Command Query Responsibility Segregation 패턴을 프레임워크 수준에서 지원합니다. 단순 CRUD를 넘어 복잡한 도메인 로직을 다룰 때, CQRS는 […]
NestJS에서 @nestjs/cqrs 패키지는 Command Query Responsibility Segregation 패턴을 프레임워크 수준에서 지원합니다. 단순 CRUD를 넘어 복잡한 도메인 로직을 다룰 때, CQRS는 […]
ORM에서 상속이 필요한 이유: 공통 필드와 다형성 실무에서 엔티티 간에 공통 필드가 반복되는 상황은 매우 흔합니다. createdAt, updatedAt, deletedAt 같은
Redis 단일 인스턴스의 한계: 왜 고가용성이 필요한가 Redis를 단일 인스턴스로 운영하면 해당 노드가 다운되는 순간 전체 서비스가 캐시 없이 동작하거나,
JSON vs JSONB: 저장 방식의 근본적 차이 PostgreSQL은 두 가지 JSON 타입을 제공합니다. 이름이 비슷하지만 내부 저장 방식이 완전히 다릅니다.
왜 큐가 필요한가: HTTP 요청 밖에서 일을 처리하는 이유 API 요청 안에서 이메일 발송, 이미지 리사이징, PDF 생성, 외부 API
파티셔닝이란: 하나의 논리 테이블, 여러 물리 저장소 MySQL 파티셔닝은 하나의 논리적 테이블을 여러 개의 물리적 파티션으로 분할하여 저장하는 기능입니다. 애플리케이션은
Ingress가 필요한 이유: Service만으로는 부족한 HTTP 라우팅 Kubernetes Service의 LoadBalancer 타입은 서비스 하나당 외부 로드밸런서 하나를 생성합니다. 마이크로서비스 10개가 있으면
Terraform 모듈이란: Root Module과 Child Module의 관계 Terraform에서 모듈은 함께 관리되는 리소스의 집합입니다. 모든 Terraform 구성은 그 자체로 모듈이며, 작업
QueryBuilder 생성과 타입 시스템: em.qb() 단축 문법 MikroORM의 QueryBuilder(이하 QB)는 ORM 엔티티 메타데이터를 활용하면서도 SQL 수준의 제어가 필요할 때 사용하는