NodeJS 6

[NodeJS] Node.js가 빠른 이유

Node.js가 빠르다는 얘기는 많이 들어봤는데, 조금 생각해보면 신기합니다. C/C++처럼 low level을 직접 제어하지도 않고, Java처럼 최적화된 가상머신에서 실행되는것도 아닌데 말이죠. 게다가 Node.js는 싱글 프로세스이고 자바스크립트의 Main Thread는 1개라고 합니다. Main Thread가 1개라는 말은, CPU core중에서 한개만 사용할 수 있다는 말인데 어떻게 빠른걸까요? 그 해답은 none-blocking IO에서 찾을 수 있었습니다. none-blocking IO를 다루기 전 확실히 하고 갈 것은, Node.js는 싱글 스레드가 아니라는 사실 입니다. Node.js 내부의 Event Loop가 싱글 스레드이고, Node.js는 멀티 스레드를 활용하도록 설계되어있습니다...

NodeJS 2021.09.25

[링크] 견고한 nodejs 프로젝트 설계하기

어떤 언어든 프로젝트를 시작하려고 하면, 어떤 구조가 좋은 구조인가 스스로 고민하게된다. 하지만, 혼자 열심히 고민해서 구조를 설계해도, 개발하다보면 부족한점이 끊임없이 드러난다. 혼자 고민하며 얻는것들도 많겠지만, 그 시간이 너무 길어지지 않도록 해야한다고 생각한다. 특히 설계는 지식 + 경험이라고 생각한다. 그래서 내가 알고있고 경험해본것 이상의 좋은 설계를 혼자 도출하는것은 매우 어렵다고 생각한다. 안그래도 공부할 것들이 많은데 고민을 너무 비효율적으로 하지말자. https://velog.io/@hopsprings2/견고한-node.js-프로젝트-아키텍쳐-설계하기 [견고한 node.js 프로젝트 설계하기 본 글은 Sam Quinn의 “Bulletproof node.js project architec..

NodeJS 2021.07.23

[링크] express exception handling

https://expressjs.com/ko/guide/error-handling.html Express 오류 처리 오류 처리 다른 미들웨어 함수와 동일반 방법으로 오류 처리 미들웨어 함수를 정의할 수 있지만, 오류 처리 함수는 3개가 아닌 4개의 인수, 즉 (err, req, res, next)를 갖는다는 점이 다릅니다. 예를 들면 다음과 같습니다. app.use(function(err, req, res, next) { console.error(err.stack); res.status(500).send('Something broke!'); }); 오류 처리 미들웨어는 expressjs.com

NodeJS 2020.03.08

[NodeJS] Visual Studio Code NodeJs Extention 추천

1. Bracket Pair Colorizer 2 괄호쌍을 같은색으로 해준다. ex) ( ( ( 이런식으로 ) ) ) 2. npm npm 명령어를 선택하면 terminal에 명령어가 자동으로 입력되게 한다. 3. npm Intellisense 코드 작성 중 설치된 module 자동완성 기능 제공 4. ESLint 문법오류로 추청되는부분 표시 5. Auto Close Tag html태그를 자동으로 닫아준다. 심지어 " " 안에서도.. 참고 https://developer.okta.com/blog/2019/05/08/top-vs-code-extensions-for-nodejs-developers Top 10 Visual Studio Code Extensions for Node.js Our recommenda..

NodeJS 2020.01.02

[NodeJS] 1. 웹 프로젝트 시작하기

먼저 NodeJS를 다운받아야 한다. https://nodejs.org/ko/download/ 다운로드 | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 1. 아래에서 본인 컴퓨터 환경에 맞게 다운로드를 한다.(필자는 binary를 추천) 2. 압축을 풀고 node.exe를 환경변수(path)에 추가한다. 3. node프로젝트를 시작하고자 하는 위치에서 cmd를 열고 node를 실행한다. 4. npm init 후 나오는 여러 정보들을 입력. 위 과정을 거치면 npm project 초기화가 완료된다. 웹 프로젝트를 위해 Express라는 모듈을 추가로 설치한다. 다시 아래 명령어를 입력한다..

NodeJS 2020.01.02