본문 바로가기

개발17

01) Nest.js JWT인증 + RoleGuard 가이드 전체 코드 : https://github.com/jeounpar/nestjs-jwt-roleguard-tutorial JWT란 무엇인가요? https://jwt.io/introduction JWT.IO JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties. jwt.io 1. nest 프로젝트 생성 및 auth 모듈 생성 $ nest new jwt-tutorial $ cd jwt-tutorial $ nest generate module auth $ nest generate service auth $ nest generate controller auth 2.. 2023. 6. 9.
아주대학교 공지사항 크롤러 개발 최근 팀프로젝트를 진행하면서 아주대학교 공지사항을 긁어올 일이 생겼다. 아쉽게도 학교에서 제공해 주는 API가 없어서 직접 크롤러를 만들어서 공지사항을 긁어와야 한다. 코드의 흐름은 다음과 같다 1. 클라이언트가 공지사항 페이지 번호를 url 파라미터에 넣고 서버에 요청 2. 서버는 axios를 이용해 공지사항 html 데이터를 긁어옴 3. cheerio를 이용해 html 파싱 4. 공지사항 타이틀, 생성 날짜, 링크된 url을 json 형태로 클라이언트에 응답 const axios = require('axios'); const cheerio = require('cheerio'); const express = require('express') const app = express() const origin.. 2023. 4. 26.
대용량 트래픽 처리를 위한 6가지 방법 1. 서버의 수평적 확장과 로드 밸런싱 서버를 수평적으로 확장하고 로드 밸런싱을 추가하여 트래픽을 분산시킨다. 2. 캐시 사용 캐시를 적용하여 반복적인 요청을 처리하는 데 필요한 리소스를 줄일 수 있다. 또한 캐싱된 데이터를 사용하면 요청에 대한 응답 시간 또한 단축할 수 있다. 3. CDN(Content Delivery Network) 사용 CDN을 사용해서 콘텐츠를 여러 리전에 분산하여 물리적인 거리를 줄여서 데이터 요청에 대한 응답 속도를 향상 시킬 수 있다. 4. 데이터베이스 최적화 인덱스를 추가하거나 쿼리를 최적화하여 데이터 처리 속도를 향상 시킬 수 있다. 5. DNS 캐싱 서버 사용 DNS 캐싱 서버를 사용하여 DNS 조회 요청을 줄여 응답 시간을 단축시 킬 수 있다. 6. 코드 최적화 코드.. 2023. 3. 29.
vscode - code snippet 사용법 (C++) mac 기준 1. cmd + shift + p 입력 후 Snippets 검색 2. cpp.json 선택 3. cpp.json 편집 { "c++ codingtest template": { "prefix": "cpp-start", "body": [ "#include ", "", "using namespace std;", "typedef long long ll;", "", "int main(void) {", " ios_base::sync_with_stdio(0);", " cin.tie(0);", " cout.tie(NULL);", " ", " return 0;", "}" ], "description": "c++ codingtest template" }, "dx / dy": { "prefix": "dxdy", .. 2023. 3. 24.
C++ 문자열 Split 함수 #include using namespace std; vector split(string input, string delimiter) { vector ret; long long pos = 0; string token = ""; while ((pos = input.find(delimiter)) != string::npos) { token = input.substr(0, pos); ret.push_back(token); input.erase(0, pos + delimiter.length()); } ret.push_back(input); return ret; } 예시 #include using namespace std; typedef long long ll; vector split(string input, s.. 2023. 3. 24.
Nest.js serverless + AWS Lambda 배포하기 소스코드 : https://github.com/jeounpar/nestjs-aws-lambda 1. nest 프로젝트 생성 $ nest new aws-lambda-test 2. serverless 모듈 설치 $ npm install -g serverless $ npm install --save aws-serverless-express aws-lambda $ npm install --save-dev serverless-plugin-typescript serverless-plugin-optimize serverless-offline plugin $ serverless plugin install -n serverless-plugin-warmup 3. aws credential 설정 $ vi ~/.aws/cre.. 2023. 3. 19.