Node.js 비동기 처리 모델 이해하기: 실시간 대규모 처리에 맞는 이유
싱글 스레드인 Node.js가 어떻게 동시성을 내는지, libuv와 스레드 풀이 I/O를 어떻게 나눠 맡는지, 스레드 풀을 늘리면 이득인 작업은 무엇인지 정리했다.
Node.js 와 Express, 인증과 보안, 데이터베이스, Firebase.
싱글 스레드인 Node.js가 어떻게 동시성을 내는지, libuv와 스레드 풀이 I/O를 어떻게 나눠 맡는지, 스레드 풀을 늘리면 이득인 작업은 무엇인지 정리했다.
스레드는 프로세스 내에서 실행되는 실행 단위를 말한다. 그럼 스레드가 많으면 좋은 게 아닐까? 브라우저도 그렇고, Node도 그렇고, 왜 싱글 스레드를 사용할까? 이유는 바로 쉬.워.서.다. 만약 자바스크립트가…
NPM은 Node.js를 위한 패키지 매니저와 설치 관리자로, 수많은 오픈소스 라이브러리와 도구들이 업로드되는 저장소입니다. NPM CLI를 사용하여 필요한 라이브러리나 도구를 쉽게 설치할 수 있으며, 프로젝트…
가지고 있는 데이터를 내가 원하는 형태의 데이터로 ‘가공'하는 과정을 parsing 이라 하며 그 과정을 수행하는 모듈 혹은 메소드를 parser 라 일컫는다.
node.js에서 html을 랜더링하면 오류가난다. ESJ엔진을 통해 랜더링 해준다.
npm은 관리 툴, npx는 npm에 있는 실행 툴이다. npm 패키지를 설치하지 않고 사용할 수 있게 해주는 도구로, 프로젝트에 추가하거나 전역 패키지로 추가하지 않고, npx를 이용하여 바로 실행할 수 있다.
어떤 이름의(form에서 name 속성) 파일을 몇개 업로드 할지도 정해야한다.
Logging미들웨어: http 상태 코드, 접속 하는데 걸린 시간, 명령어 등을 기록한다.
1) HTTP GET메소드에 관한 Request만 다룬다.
다른 정보 + 같은 형식을 가진 것들을 캡슐화하는 컨셉을 일컫는다.
HTML, CSS의 다소 난잡한 코드를 PUG를 통해 간략한 코딩을 할 수 있음
1) HTPP 요청에서 시작해, 최종 응답으로 라우팅하기 전의 중간 단계를 말한다
최신 ES6 JS코드를 무난한 예전의 코드로 변환해주는 "자바스크립트 컴파일러 라이브러리"이다.
웹 프레임 워크: 웹 서비스를 빠르게 구성하기 위해, HTTP 요청, 응답, 라우팅, HTML Templating 등의 기능을 제공하는 툴이다.
JavaScript는 브라우저에 내장되어 사용되는 언어였다. Node.js는 JavaScript를 브라우저 밖으로 가지고 나왔다. 이를 통해 파일 시스템을 다룰 수 있게 되고, 서버를 만들 수 있고, 웹…
인터넷 서비스는 SaaS(Software as a Service)의 형태이다. 서비스 중에서 사용자가 필요한 일부만 사용할 수 있게 한다. Facebook이나 트위터가 세상에 널리 퍼지게된 이유 중에 하나가 외부…
Express에 Helmet을 켜자 카카오 SDK와 애드센스 스크립트가 CSP에 막혔다. 시도한 방법들과 helmet-csp로 scriptSrc를 조정해 해결한 설정을 정리했다.
node.js 웹서버를 배포, 기동 후 접속했는데, 위와 같은 현상이 발생할 때가 있다.
HTTP의 특징과 쿠키와 세션을 사용하는 이유
사용자 인증 구현시켜주는 미들웨어 인증이란 브라우저 상에 쿠키를 설정해주면, 그 쿠키를 통해서 사용자 ID등을 알 수 있을 것이고, Passport가 브라우저에서 자동으로 쿠키를 가져와서 인증이 완료된 user…
로그에 쌓이는 사용자 선호 국가 데이터의 가중치를 실시간으로 보정해야 했다. Update By Query 대신 Ingest Pipeline을 쓰고, Index Template 우선순위와 기존 인덱스, Kibana 필드 문제를 풀어 간 기록이다.
https://www.mongodb.com/cloud/atlas
스키마(구조적 개념, 데이터 형태 만들기)
When you need to import something that doesn't export anything, but does something else, this is a side effect only…
대표적인 NoSQL 데이터베이스이다. - mongo(humongous, extremely large)는 Humongous 에서 따온 말로, 엄청나게 큰 DB 라는 의미이다. - 대용량 데이터를 처리하기 좋게…
파이어베이스 Cloud Function 사용법
언제써?1. 아이디어를 빠르게 테스트해야할 때 2. 서버, DB에 시간과 돈을 낭비하고 싶지 않을 때