NestJS + TypeORM 엔티티 관계 설계
왜 Subscriber와 Entity Listener를 알아야 하는가 NestJS + TypeORM 프로젝트에서 “엔티티가 저장/수정/삭제될 때 부가 로직을 실행”해야 하는 상황은 반복됩니다. 감사 […]
왜 Subscriber와 Entity Listener를 알아야 하는가 NestJS + TypeORM 프로젝트에서 “엔티티가 저장/수정/삭제될 때 부가 로직을 실행”해야 하는 상황은 반복됩니다. 감사 […]
Nginx 리버스 프록시란? Nginx 리버스 프록시는 클라이언트 요청을 받아 백엔드 애플리케이션 서버로 전달하고, 응답을 다시 클라이언트에 반환하는 중간 서버입니다. SSL
들어가며: @Transactional을 붙이면 끝이라는 착각 Spring Boot에서 @Transactional은 가장 많이 쓰이면서도 가장 많이 오해되는 어노테이션이다. “메서드에 붙이면 트랜잭션이 걸린다”는 수준에서
Docker Multi-Stage Build란? Docker Multi-Stage Build는 하나의 Dockerfile 안에 여러 빌드 단계(stage)를 정의하고, 최종 이미지에는 실행에 필요한 파일만 복사하는 기법입니다.
왜 관계 로딩 전략이 중요한가 NestJS + TypeORM 프로젝트에서 Entity 간 관계(@OneToMany, @ManyToOne, @ManyToMany)는 필수입니다. 그러나 로딩 전략을 의식하지 않으면
들어가며: “인덱스를 걸었는데 왜 느리죠?” MySQL 운영에서 가장 흔한 질문이다. 인덱스를 만들었지만 쿼리가 여전히 Full Table Scan을 타거나, EXPLAIN에서 type:
왜 Self-Hosted Runner인가 GitHub-hosted runner는 편리하지만, 빌드 시간 제한(6시간)과 무료 분수 한도, 내부 네트워크 접근 불가 등 실무에서 벽에 부딪히는
왜 Terraform Workspace를 정확히 이해해야 하는가 Terraform을 사용하는 팀이 가장 먼저 부딪히는 질문은 “dev/staging/prod 환경을 어떻게 분리할 것인가”입니다. 많은 팀이
코인 선물거래를 시작하는 초보 트레이더의 80% 이상이 첫 3개월 안에 계좌 잔고의 절반 이상을 잃습니다. 이는 실력의 문제가 아니라 반복되는