전체 글
![[AWS] node.js의 프로세스 매니저 PM2 사용 명령어](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FvnrOg%2FbtraRkVSiQk%2FAAAAAAAAAAAAAAAAAAAAACbM2A4rqxOU9-qEs8LumReKdaTUUwzOJUIbZZGlesGY%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1759244399%26allow_ip%3D%26allow_referer%3D%26signature%3DKkJdDkFT%252Bi1pFvl6LOoPPLPOaUE%253D)
[AWS] node.js의 프로세스 매니저 PM2 사용 명령어
이번 글에서는 PM2 사용법에 대해 적어보겠습니다. 저는 node.js 기반 웹서버를 aws EC2 인스턴스로 구동시킨 후에 노트북을 닫아도 서버를 계속 구동시키기 위해 PM2를 사용하고자합니다. PM2란? 우선, PM2의 위키백과의 정의를 가져왔습니다. PM2는 JavaScript 런타임 Node.js의 프로세스 관리자(manager)입니다. 2016 년 PM2는 GitHub에서 82 번째로 가장 인기있는 JavaScript 프로젝트로 선정되었습니다. 저는 aws 서버 위에서 동작시키고 있는 웹서버를 내 노트북을 닫아도 어떻게 계속 작동시키지? 고민하다 알게되었습니다. 말그대로 제가 원격으로 연결 중인 putty를 끄든, 노트북을 닫든 pm2를 이용해서 서버를 동작시키면 중단이 되지 않도록 해주는 녀석..
[Concept] 배열 - 큐와 스택
#자료구조_배열 [파이썬의 배열] 리스트 활용 1차원, 2차원까지는 알고 있으면 좋다. 같은 종류의 데이터를 순차적으로 저장한다. Q. 왜 필요한가? A. 같은 종류의 데이터를 효율적으로 관리하기 위해 사용하기 위해! [단점] 데이터 추가/삭제의 어려움 미리 최대 길이를 지정해야 하는 점 Q. Why? A. 삭제 시, 뒤에 있던 데이터를 앞당겨야하기 때문이다. [장점] 인덱스를 통해 빠른 접근 가능하다. 첫 데이터의 위치에서 상대적인 위치로 데이터에 접근(인덱스 번호로 접근)한다. # 자료구조_큐(Queue) [큐] 줄을 서는 행위와 유사 FIFO(First-In, First-Out) 또는 LILO(Last-in, Last-Out) 방식. 스택 Q.큐에 값을 넣은 상태에서, 데이터를 꺼내라는 명령을 내리..
[Concept] 자료구조와 알고리즘
# 자료구조와 알고리즘 [자료구조] Data Structure, 데이터 구조 효율적인 데이터 관리의 예 학생에게 학년&반&번호를 부여하는 것 우편번호 대표적인 자료구조 : 배열, 스택, 큐, 링크드 리스트, 해쉬테이블, 힙 [알고리즘] 어떤 문제를 풀기 위한 절차와 방법 사람마다 문제를 다르게 푸는데, 이 풀이 방법들 중 좋은 알고리즘의 기준은 시간과 공간! 즉, 메모리 공간과 시간 복잡도를 고려하는 것이다. 어떤 자료구조와 알고리즘을 쓰느냐에 따라, 성능이 달라지기 때문에 "자료구조"와 "알고리즘"이 중요한 것. Q. 코딩테스트를 왜 하나요? A. 개발자는 어떤 문제를 해결할 수 있는 능력을 업으로 하기 때문에, 이를 평가 하기 위해 자료구조와 알고리즘을 성능이 좋은 코드로 작성할 수 있느냐!를 검증하..

알고리즘 공부를 위한 강의 선택
이번 글은 코테 공부를 제대로 하기위해 선택한 강의와 후보에 있었던 강의들에 대해 소개하고자 합니다. 방금 따끈하게 결제하고 왔기 때문에, 후기는 강의를 어느정도 듣고 찾아오겠습니다. 본인의 상태 본인은 기본적인 자료구조와 알고리즘은 익힌 상태입니다! 다들 아는 BFS, DFS, 구현, 스택, 큐.. 등등 이론적으로 배웠고 백준 문제풀이를 해본 정도입니다. 백준 티어는 실버입니다! 코테를 갑자기 보게 되야하면서 공부를 시작했는데 쉬운게 아니란 걸 느끼고 강의를 들으며 다시 해보려 합니다. 사실 검색해보면, 강의 없이도 공부할 수 있는 경로는 매우 많습니다. 유튜브로 개념 익히고, 백준 문제풀이 풀고, 프로그래머스 풀고 등등.. 제가 강의를 신청한 이유는 속도를 맞추기 위함.이 가장 큰 것 같습니다. 스터..
![[npm] 필요한 모듈 한번에 설치하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FbpC6kB%2FbtraMqVc9gy%2FAAAAAAAAAAAAAAAAAAAAAP-NE0UoB7TXsg7lEpeUhXsLCuzdT3ZWqRuItp14zqNp%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1759244399%26allow_ip%3D%26allow_referer%3D%26signature%3DG9AbaX6GgGdZWwbItCi1fAsy1hc%253D)
[npm] 필요한 모듈 한번에 설치하기
이번 글에서는 필요한 모듈들을 일일이 설치하지 않고 한번에 설치할 수 있는 명령어를 알아볼 것이다. 진행되고 있는 프로젝트 중간에 합류하다보면 진행되고 있는 프로젝트를 git으로 clone해와서 확인해봐야할 것이다. 그리고 나도 같이 개발을 진행해야하는데.. 이 많은 모듈들을 한번에 설치하는 명령어가 있다. 더보기 처음엔 하나하나 의미를익히면서 설치하였는데.. 이러다간 꽁무니만 따라가고 있을 것 같아서 일단 모듈을 다 설치하고 코드를 보면서 모르는 모듈은 알아보는 식으로 진행해야겠단 생각이 들었다. 그럼 해당 프로젝트에 필요한 모듈들을 먼저 설치해보자. 코드는 간단하다. $ npm install package.json 파일만 있다면 해당 파일의 dependencies에 있는 모듈들은 모두 설치가 된다. ..
[개념] Routing
라우팅 express에서 라우팅이라는 개념은 클라이언트로부터 요청받은 URL과 뷰를 매칭시키는 것이라고 할 수 있습니다. 우리가 웹 브라우저에 google.com 이라고 입력하면 해당 구글 웹서버가 응답하여 매칭되는 화면을 띄우는 것이라고 할 수 있죠. 아래 예시를 보면 , 같은 도메인 주소(www.naver.com) 에서 path에 따라 다른 페이지를 보여주는 역할을 라우터가 해주는 것입니다. 여기서 path는 webtoon과 blog 이네요. https://www.naver.com/webtoon https://www.naver.com/blog //예시를 들고자 편하게 적은 것이며 실제와 다릅니다. 웹을 제작할 때 초기에 해당 코드를 많이 볼 수 있습니다. 페이지가 있어야 그 페이지를 구성하고 꾸미겠죠..