백엔드 개발자가 알아야 할 것들
백엔드 공부를 시작해보려고 한다.
나는 디자인, 퍼블리싱, 프론트엔드 지식밖에 없기 때문에,
기본적으로 내가 공부 할 키워드를 훑어봤다.
프론트엔더라 자바스크립트에 익숙하다 보니, Node.js를 공부할 예정이다.
언어 : 자바스크립트 & 타입스크립트
웹 프레임워크 : express, NestJS
인증 : 인증, 인가, Oauth
데이터베이스 : RDB - SQLite / NoSQL - 몽고디비 / ORM
HTTP : RESTful API
+ 서버와 운영체제에 대한 이해 (리눅스서버 및 리눅스 명령어들..)
+ vim
웹 서버와 WAS
Web Server (웹서버) : 이미지나 pdf, xls 등등 정적파일을 서비스하는 서버. ex) 아파치, 엔진엑스
Web Application Server (WAS) : 스프링이나 장고 같은 웹프레임워크를 실행시켜 데이터를 처리하는 서버 ex) 톰캣
컨테이너 환경과 배포
도커를 이용해 실제 운영서버의 환경과 개발서버의 환경을 맞춰 개발할수있다.
컨테이너 환경의 경우 쿠버네티스를 사용해 배포하기도 한다.
롤링 배포 : 특정 서버들을 돌면서 배포하는 방식
블루그린 배포 : 같은서버의 인스턴스를 띄우고, 로드밸런서 설정을 바꾸고 배포하는 방식
카나리 배포 : 지정서버 혹은 특정 유저, 일정 부분만 배포하고 이상이 없을 때 배포범위를 확장해나가는 방식
CI/CD : Continuous Integration / Continuous Delivery & Continuous Deployment
(지속적인 배포, 코드 반영. 개발 - 테스트 - 배포 - 모니터링을 끊임없이 하는것을 의미)
'[IT] 프로덕트 개발 > Node.js 백엔드' 카테고리의 다른 글
architecture 아키텍처란? 계층형/이벤트기반/마이크로서비스 (0) | 2023.08.04 |
---|