본문 바로가기
반응형

nodejs8

[Express]ExpressJS란? Express는 Node.js를 위한 빠르고 개방적인 간결한 웹 프레임워크이다. Node.js의 등장으로 원래는 브라우저 안에서만 쓰이던 자바스크립트가 브라우저 바깥에서도 사용할 수 있게 되었다. 따라서 자바스크립트로 서버도 만들 수가 있게 되었는데 이러한 개발자들이 서버를 쉽게 구성할 수 있게 만든 프레임워크가 바로 Express라고 할 수 있다. 상당히 빠르고 유연하며 개방적이기 때문에 초심자들이 많이 선택하는거 같다. 기본적으로 프레임워크 안에 웹 어플리케이션 서버 구축을 위한 각종 라이브러리와 미들웨어가 내장되어 있기 때문에 개발하기가 편하고 가장 대중화 되어 있어 배우기가 쉽다. 그럼 express를 시작해보자. nodejs가 깔려있다는 가정하에... 먼저 적당한 디렉토리를 연다. 그리고 터미널.. 2023. 12. 6.
[AWS] Github Action으로 EC2에 Nestjs 자동 배포 기존에 AWS EC2에 Nest 프로젝트를 하나 띄워놨었다. 기존 방식은 저장소를 클론해서 pull을 받고 npm run build로 빌드하는 식. 이런 방식이면 배포 브랜치에 커밋이 추가 될 때마다 해당 EC2 인스턴스에 접속해서 pull을 받고 다시 배포를 해야되는 상황이 생겨 불편함이 야기 될 게 뻔했다. 그래서 CI/CD에 대해서 조사를 하던 중에 github action을 사용해서 간단하게 자동 배포 파이프라인을 구축했다. 방식은 다음과 같은데 내가 로컬 컴퓨터에서 깃허브의 레포지토리로 push를 했을 때 github action이 실행되고 github action에서 EC2에 ssh 접속을 해서 작성해둔 스크립트로 pull을 받고 서버를 다시 재가동하는 방식이다. 일단 당연히 EC2(ubunt.. 2023. 10. 4.
[Node.js] PM2 알아보기 PM2는 Node.js 어플리케이션을 쉽게 관리할 수 있게 해주는 Process Manager이다. 어플리케이션을 cluster mode로 실행시킨다거나, 메모리가 넘친다거나 오류로 인해 프로세스가 종료되는 등의 상황에서 PM2를 사용하면 간단한 설정으로 이러한 처리를 쉽게 해결 가능하다. 설치는 다음 명령어를 실행하면 된다. npm install -g pm2@latest Cluster mode 기본적으로 Node.js는 싱글스레드이다. 싱글스레드의 경우 구동 중인 서버의 CPU 개수와 상관 없이 1개만 사용할 수 있기 때문에 서버 전체의 성능을 온전히 사용하지 못한다. 만약 멀티스레드는 최대 서버 CPU 수 만큼 프로세스를 생성해 최대 성능을 끌어낼 수 있다. # pm2 start app.js -i m.. 2023. 9. 26.
[Redis] Redis란? 그 동안 프로젝트에 redis를 붙여봐야지 하고 한참을 미루다가 붙이기 전에 글로 정리하고자 쓰는 포스팅... Redis는 Key,Value 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터베이스 관리 시스템이다. 전체 데이터를 영구히 저장하기 보다는 캐쉬처럼 휘발성이나 임시성 데이터를 저장하는데 많이 사용된다. 디스크에 데이터를 주기적으로 저장하기는 하지만, 이 기능은 백업이나 복구용으로 주로 사용하고 데이터는 모두 메모리에 저장되기 때문에, 빠른 접근 속도를 자랑한다. 그렇다면 데이터를 저장하는 데이터 베이스가 있는데 왜 Redis라는 인메모리 데이터 구조 저장소를 사용하는 이유는 무엇일까? 일단 데이터베이스는 데이터를 직접 물리 디스크에 쓰기 때문에 서버에 문제가 발생.. 2023. 9. 11.
반응형