[클라이언트] -> 서버 -> 서버 -> 데이터베이스
[클라이언트] <- 서버 <- 서버 <- 데이터베이스
스케일업 : 서버를 기존 사양보다 업그레이드 함
하드웨어적으로는 디스크나 cpu를 추가하여 용량 성능 올림
스케일 아웃 : 기존서버만으로 용량이나 성능한계에 도달했을 때, 비슷한 사양의 서버를 추가
기존서버의 부하를 분담.
로드밸런싱 (load balancing) : 네트워크 개념, 2~3개의 cpu 추가
마이크로서비스 : 애플리케이션을 느슨하게 결합된 서비스의 모임으로 구조화하는 서비스지향아키텍처스타일의 일종인 소프트웨어개발기법이다.
ex) 웨이터가 경청전문 웨이터, 물 전문 웨이터, 계산 전문 웨이터 등으로 쪼개져 서비스 하는 느낌!
: 게임서버, 파일서버, 매일서버, 웹서버
웹 브라우저 없이도 자바스크립트를 실행할 수 있다!
싱글 스레드 : 스레드가 하나이면 js코드를 동시에 실행할 수 없다.
그런데 node12부터 멀티스레드 지원
ex) 싱글 스레드면 점원이 한명이라 고객1 보는동안 고객2,3은 대기중
멀티스레드면 점원이 여러명이라 고객1,2,3을 1 대 1로 볼 수 있다.
Node.js 설치하기
NVM : Node.js 버전을 관리하는 도구로 협업등을 할 때 버전 호환 문제생길때 이용.
nvm-setup.exe 구글에 검색
https://github.com/coreybutler/nvm-windows/releases 사이트에서
ctrl+f 로 nvm-setup.exe 찾아도 됨
윈+ r cmd 에서 nvm current 버전 확인
cmd 관리자권한으로 실행해서 (ctrl + shift + enter)
명령어 uvm on 치면 Now using node v16.16.0 (64-bit)
나오므로 nvm use 14.20.0 으로 쳐야함
윈 + cmd 켜고 node 치면 node 실행
js 와 동일한 기능 수행 가능
(ppt 48 참고)
======================================
vs code 켜서
파일 새로 만들고
터미널 켜서
파일명 입력하면
html 필요없이 확인 가능
======================================
받아올 index.js 에
const {sum, sub, mul, div, rem} = require('./calculator.js')
불러올 함수가 있는 calculator.js에
module.exports = {sum, sub, mul, div, rem}