Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

npm -> yarn berry 변경 #20

Open
seoko97 opened this issue Jul 4, 2023 · 0 comments
Open

npm -> yarn berry 변경 #20

seoko97 opened this issue Jul 4, 2023 · 0 comments
Assignees
Labels
DOCUMENTATION Improvements or additions to documentation

Comments

@seoko97
Copy link
Owner

seoko97 commented Jul 4, 2023

💼 구현 개요

  • 기존 프로젝트에서 npm을 사용하여 프로젝트를 생성했습니다.
  • 이를 yarn berry로 변경하여 성능상 이점을 가져가는 것을 목표합니다.

진행 계획 및 결과

  • zero install을 통해 빌드 시간에서 이점을 가져가는 것을 목표로 합니다.
  • PnP를 통해 install한 패키지들을 관리하여 유령의존성, zip 형식을 통한 용량적 이점을 가져사는 것을 목표로합니다.

node_modules vs .yarn

분류 npm Yarn Berry 증감(%)
클라이언트 614MB 324MB 약 48%
서버 465MB 68MB 약 86%

48% ~ 86%의 용량이 감소한 것을 확인할 수 있습니다.

Dcoker Image

분류 npm Yarn Berry 증감(%)
클라이언트 742MB (191.8s) 591MB (132.1s) 약 20%
서버 453MB (88.8s) 188MB (32.2s) 약 58%

Docker Image size가 20% ~ 58% 감소한 것을 확인할 수 있습니다.

GIthub Action

Client

steps npm Yarn Berry 증감(%)
Install the project dependencies 43s 55s 약 127%
Docker build & push to push 6m 40s 3m 26s 약 48%

클라이언트에서는 의존성을 설치하는 과정에서 Yarn Berry가 약 27% 더 느렸습니다.

** Server**

steps npm Yarn Berry 증감(%)
Install the project dependencies 19s 6s 약 68%
Docker build & push to push 1m 47s 1m 11s 약 33%

CI/CD 전체 시간

분류 npm Yarn Berry 증감(%)
클라이언트 8m 19s 5m 44s 약 31%
서버 3m 4s 2m 4s 약 32%

클라이언트, 서버 포함 30% 이상의 성능 향상을 보여주고 있습니다. Docker image build시 Install the project dependencies을 통해 의존성 설치를 진행했기 때문에 Docker image build시간이 줄어든 것을 확인할 수 있습니다.

정리

전체적인 성능 향상을 이뤘다고 생각합니다. 자세한 사용 후기는 해당 글에서 확인하실 수 있습니다.

@seoko97 seoko97 added the DOCUMENTATION Improvements or additions to documentation label Jul 4, 2023
@seoko97 seoko97 self-assigned this Jul 4, 2023
@seoko97 seoko97 pinned this issue Jul 4, 2023
@seoko97 seoko97 changed the title npm -> yarn berry 적용 npm -> yarn berry 적용 Jul 4, 2023
@seoko97 seoko97 changed the title npm -> yarn berry 적용 npm -> yarn berry 변경 Jul 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DOCUMENTATION Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

1 participant