https://nx.dev/
NX 특징
- 현재 가장 많은 기능을 제공하는 모노레포 빌드 시스템 도구
- 개발자 생산성 향상, CI 성능 최적화, 코드 품질 유지를 위한 도구
- 단일 워크스페이스 혹은 전체 워크스페이스드에 대한 태스크를 수행할 수 있다.
- 단일 워크스페이스 태스크 실행: nx[명령어] [app이름]
- 전체 워크스페이스 태스크 실행 : nx run-many -t [명령어]
- 작업의 결과에 대한 캐싱 기능을제공한다.
- 모노레포 안에 있는 모든 패키지 간의 의존성 그래프를 생성한다.
NX Cache Exmaple
1. NX 설치
pnpm -w add nx -D
2. NX 캐싱, 오케스트레이션 설정
- ex) package.json
{
"name": "08_gugbab-nx-test",
...
"nx": {
"targets": {
"build": {
# 캐싱 유무
"cache": true,
# 캐싱할 대상
"dependOn":[
"^build"
],
# 빌드 결과물 생성 위치
"outputs": [
"{projectRoot}/dist/**/*"
]
}
}
}
}
3. 캐싱 테스트
- 캐싱 안되어있을 때 (6s)
- 캐싱되어있을 때 (88ms)
'MSA' 카테고리의 다른 글
[MFA]Nginx Reverse Proxy Server특징 example(pnpm+turborepo+vite) (1) | 2024.01.01 |
---|---|
[MFA] 트랜스파일러(Transpiler), 번들러(Bundler) 특징 (Babel, SWC, webpack, Vite) (0) | 2023.12.25 |
[MFA] Node 패키지 매니저, 워크스페이스 개념(soft-navigation,hard-navigation) (0) | 2023.11.19 |
[MFA] 모노레포(Mono Repo)란? 장단점 (2) | 2023.10.28 |
[MFA] 마이크로 프론트엔드 아키텍처 특징 장,단점 (0) | 2023.10.22 |