개발/NestJS (2) 썸네일형 리스트형 [Node.js] worker thread를 이용한 CPU bound 작업 병렬 처리 개요NestJS로 프로젝트를 진행하며, CPU bound 작업이 있는 상황이 있었습니다. JS는 기본적으로 싱글스레드 비동기로 동작했기 때문에 CPU 코어수가 여러개 있더라도 한개의 코어밖에 사용하지 못했습니다. 이 때문에 CPU bound 작업을 병렬처리하지 못했고, 이는 사용자가 빠르게 응답을 받지 못하는 결과로 이어졌습니다. 이를 해결하고자 Node.js의 내장 모듈인 worker thread를 이용해서 JS 코드를 병렬처리 해보겠습니다. worker thread worker thread는 Node.js에서 다중 스레드를 사용할 수 있도록 도와주는 모듈입니다. 1부터 10억까지 더하는 작업을 예시로 들어 설명드리겠습니다. 사용법은 간단합니다. worker_thread 모듈을 가져온 뒤, 사용자.. Github Action + NestJS e2e 테스트 환경 구성 개요인턴십 기간 동안, 사내 프로젝트 개발에 참여하며 서비스 안정화를 위해 테스트 코드를 작성했습니다. 특히 애플리케이션의 비즈니스 로직을 담당하는 서비스 레이어에 대해서는 시스템 간 상호작용을 직접 확인하기 위해 통합 테스트를 작성했습니다. 보다 더 안정화된 서비스를 위해, main 브랜치에 push 될 때 자동으로 테스트를 실행하는 워크플로우를 추가해 보겠습니다. Continuous Integration(CI) 파이프라인name: Run Testson: push: branches: - mainjobs: container-job: runs-on: ubuntu-latest container: node:20 services: postgres: im.. 이전 1 다음