01. Artillery 개발자가 애플리케이션을 효과적으로 테스트할 수 있는 오픈 소스 라이브러리 HTTP, Socket.io, Websocket, gRPC 등 다양한 프로토콜 지원 클라우드 규모에서의 테스트 가능 (AWS Lambda 서버리스 로드 테스트) HTML, JSON 등 가독성이 좋은 처리량 및 통계 제공 시나리오 단위로 테스트 가능 02. 부하 테스트 서버가 얼마만큼의 요청을 견딜 수 있는지 테스트하는 방법 서버가 몇 명의 동시 접속자나 일일 사용자를 수용할 수 있는지 예측하는 것은 매우 어렵다. 작성한 코드에 문제가 없더라도 서버의 하드웨어 제약으로 인해 서비스가 중단될 수 있다. OOM(out of memory):서버가 접속자들의 정보 저장을 위해 각 사용자마다 일정한 메모리를 할당할 때..
01. Helmet 다양한 HTTP 헤더를 설정하여 일반적인 보안 취약점으로부터 보호해주는 보안 관련 모듈. 크로스 사이트 스크립팅(XSS), 콘텐츠 스니핑, 클릭재킹 등과 같은 위험을 최소화할 수 있다. 1. 패키지 설치 npm install helmet 2. 설치 모듈 가져오기 const helmet = require("helmet"); 3. 사용하기 // 기본 설정 app.use(helmet()); // 특정 세부 기능 하나하나 설정할때 사용 app.use(helmet.contentSecurityPolicy()); app.use(helmet.crossOriginEmbedderPolicy()); app.use(helmet.crossOriginOpenerPolicy()); app.use(helmet.c..
01. JWT JWT는 웹 표준으로서, 정보를 안전하게 전송하기 위해 사용되는 토큰 기반의 인증 방식 주로 인증과 정보 교환에 사용되며, 특히 클라이언트와 서버 간의 인증을 간단하게 구현할 때 많이 사용된다. JWT는 JSON 객체를 사용하여 정보를 표현하며, 세 부분으로 구성된다. Header(헤더): JWT의 유형과 해싱 알고리즘을 지정. 일반적으로 알고리즘과 토큰유형이 포함된다. Payload(페이로드): 클레임이라고도 불리며 이는 이름과 값의 쌍으로 이루어진다. 일반적으로 클레임은 registered, public, private으로 나눠진다. registered는 토큰의 정보를 표현하기 위해 미리 정의된 클레임이고, public은 충돌을 방지하기 위해 사용된다. private은 사용자 정의 정보..
01. cron Cron은 일정한 간격 또는 특정 시간에 주기적으로 작업을 실행하기 위해 사용되는 시간 기반 스케줄링 도구를 의미한다. 주로 리눅스와 유닉스 시스템에서 많이 사용된다. Cron 테이블 또는 Cron 작업으로 알려진 스케줄 테이블에 기반하여 작업을 예약. 이 테이블은 사용자가 지정한 작업과 실행 시간을 저장하는 텍스트 파일이다. Node.js에서는 node-cron이라는 npm 패키지를 사용하여 cron 작업을 구현할 수 있다. 02. node-cron node-cron은 Node.js에서 cron 작업을 예약하고 실행할 수 있도록 도와주는 npm 패키지. 1. 패키지 설치 npm install node-cron 2. 설치 완료 후 node-cron 모듈 가져오기 const cron = r..
01. 준비하기 kakao developer 가입하기 현재 작업하고 있는 프로젝트에 모듈 설치 (passport, passport-kakao, jwtwebtoken) npm install passport passport-kakao jwtwebtoken 02. 시작하기 kakao developer 설정 1. 내 애플리케이션 생성 2. 앱 아이콘은 처음부터 등록하기를 추천 (후에 동의 항목을 설정할 때 필요), 앱 이름, 사업자명, 서비스 이용 제한 체크 후에 저장 3. 생성된 앱을 클릭 ㅡ> 비즈니스 ㅡ> 개인 개발자 비즈 앱 전환 ㅡ> 이메일 필수 동의 ㅡ> 전환 ==> 동의 항목에서 이메일을 가져올 때 필요하다. 4. 제품 설정 ㅡ> 카카오 로그인 ㅡ> 동의 항목 : 원하는 항목을 설정에서 체크하기 5..
01. 준비하기 @ Node.js 입문 - AWS 배포하기 Node.js 입문 - AWS 배포하기 01. 준비하기 환경 설정하기 AWS 가입하기(기본 사양의 서버(EC2)를 1년 동안 무료로 사용할 수 있다.) 가비아 가입하기 & 도메인 구입하기 (결제 기간을 1년, 금액은 최대한 싼 가격으로 구입 추천) 0 yoonsoo-space.tistory.com 환경 설정하기 AWS EC2를 이용해 배포하기 (EC2를 이용해 배포를 끝낸 상태라 가정하고 설명을 시작한다.) 가비아를 이용해 도메인 준비하기 02. 시작하기 Route 53에서 도메인 인증 1. AWS 계정에 로그인 하여 Route 53을 검색하고 대시보드로 이동한다. 2. 대시보드에서 호스팅 영역에 들어간다. 3. 호스팅 영역 생성 4. 도메인 이..