Framework/NestJS6 Nest에서 Cron 서비스가 갑자기 돌지 않는다면? 1. 배경: 코드 구조 리팩토링과 QueryBuilder의 도입NestJS로 백엔드 서비스를 운영하다 보면, 엔티티(Entity) 클래스가 점점 비대해지는 문제가 생깁니다.예를 들어 특정 엔티티 안에 “날짜 범위 검색”, “OO별 필터링” 같은 쿼리 매핑 메서드를 static으로 붙여두면, 어느 순간 엔티티가 데이터 모델링과 쿼리 빌더 역할을 동시에 하게 됩니다.이를 해결하기 위해 팀에선 전용 QueryBuilder 클래스를 도입했습니다.// src/purchase/query-builders/Sample-query.builder.ts@Injectable({ scope: Scope.REQUEST })export class SampleQueryBuilder { private filters: FilterQu.. Framework/NestJS 2025. 9. 22. NestJS 완전정복: CLI 활용하기 NestJS CLI는 NestJS 애플리케이션을 개발할 때 필수적인 도구입니다. 이 가이드에서는 NestJS CLI의 주요 기능과 사용법을 자세히 알아보겠습니다.1. NestJS CLI 설치먼저 NestJS CLI를 전역으로 설치하는 방법을 알아보겠습니다:npm install -g @nestjs/cli설치가 완료되면 다음 명령어로 버전을 확인할 수 있습니다:nest --version2. 새 프로젝트 생성새로운 NestJS 프로젝트를 생성하는 방법입니다:nest new my-nest-project이 명령어를 실행하면 다음과 같은 구조의 프로젝트가 생성됩니다:my-nest-project/├── src/│ ├── app.controller.ts│ ├── app.module.ts│ ├── app.se.. Framework/NestJS 2025. 5. 26. NestJS 완전정복: 미들웨어, 가드, 인터셉터, 파이프의 모든 것 1. 미들웨어(Middleware)1.1. 개념 및 역할미들웨어는 Express와 마찬가지로 요청(Request)과 응답(Response) 사이에서 실행되는 함수입니다. HTTP 요청이 컨트롤러의 핸들러에 도달하기 전에 실행되는 함수로, 요청(request)과 응답(response) 객체, 그리고 next() 함수를 통해 다음 미들웨어로 제어를 전달할 수 있습니다. 주로 요청의 전처리(로깅, 인증, body 파싱 등)나 후처리, 특정 조건에 따른 요청 차단 등에 사용됩니다. NestJS의 미들웨어는 Express 미들웨어와 거의 동일하게 동작하지만, Nest의 DI 시스템과 모듈 시스템에 통합되어 더 구조적으로 관리할 수 있습니다.1.2. 사용법1) 클래스형 미들웨어 작성 방법 및 적용 방법기본적으로 클.. Framework/NestJS 2025. 5. 26. NestJS 완전정복: MikroORM 사용하기 MikroORM 소개MikroORM은 Node.js와 TypeScript를 위한 강력한 ORM(Object-Relational Mapping) 라이브러리입니다. TypeORM이나 Sequelize와 같은 다른 ORM들과 비교했을 때 다음과 같은 특징을 가지고 있습니다.TypeScript First: TypeScript를 기본적으로 지원하며, 타입 안정성이 뛰어납니다.Unit of Work 패턴: 트랜잭션 관리가 용이하며, 변경사항을 효율적으로 추적합니다. 모든 변경사항을 em.flush() 호출 시 한번에 처리(트랜잭션 자동화) 합니다.Identity Map: 메모리 내 객체 캐싱을 통해 성능을 최적화합니다.Entity Manager: 엔티티의 생명주기를 관리하고 데이터베이스 작업을 추상화합니다.Quer.. Framework/NestJS 2025. 5. 25. NestJS 완전정복: 모듈, 컨트롤러, 서비스의 모든 것 1. NestJS의 아키텍처 개요NestJS는 Node.js 환경에서 엔터프라이즈급 서버 애플리케이션을 개발할 수 있도록 설계된 프레임워크입니다. Angular에서 영감을 받은 구조와 데코레이터 기반 프로그래밍, 그리고 강력한 의존성 주입(Dependency Injection, DI) 시스템을 갖추고 있습니다. NestJS의 핵심은 모듈(Module), 컨트롤러(Controller), 서비스(Service) 세 가지 컴포넌트로 구성됩니다. 이 세 가지는 각각의 역할이 명확하게 분리되어 있으며, 대규모 프로젝트에서도 유지보수성과 확장성을 극대화할 수 있도록 설계되어 있습니다2. 모듈(Module): 기능 단위와 의존성 관리의 중심2.1. 모듈이란?모듈은 NestJS 애플리케이션의 구조를 구성하는 기본 단위.. Framework/NestJS 2025. 5. 16. NestJS 톺아보기 : NestJS 개요 및 아키텍처 앞으로 일주일 간 NestJS와 공부한 내용을 정리하여 올리려고 합니다.*해당 글은 AI를 활용하여 정리하였음을 서두에 밝힙니다.NestJS 개요와 아키텍처1. NestJS란 무엇인가?NestJS는 Node.js 환경에서 동작하는 진보적(Progressive)이고, 효율적이며, 확장성 있는 서버사이드 애플리케이션 프레임워크입니다. TypeScript를 기본으로 지원하며, 객체지향 프로그래밍(OOP), 함수형 프로그래밍(FP), 함수반응형 프로그래밍(FRP) 등 다양한 패러다임을 포용합니다. NestJS는 Angular에서 영감을 받은 구조와 데코레이터 기반의 프로그래밍 모델을 제공하여, 대규모 애플리케이션 개발에 적합한 아키텍처를 갖추고 있습니다.공식 사이트: https://nestjs.com/공식 문서.. Framework/NestJS 2025. 5. 15. 이전 1 다음 반응형