전체 글

백엔드 공부일지
모든 API에 적용 가능한 번역 미들웨어를 만들어보자(feat: AWS Translate, Nest.js)
·Nest.js
개요작년에 회사에서 서버의 API 외국어 번역 기능을 맡은 적이 있다. 번역이 필요한 API가 워낙 많았고, 데이터 형태 또한 모두 달라 번역이 어려운 문제가 있었다.여러 번역 툴이 있었지만, AWS Translate가 요금 측면에서 가장 저렴하여 도입하기로 결정하였다.(프리티어의 경우 200만자 까지 무료)SkillsNest.jsAWS TranslateOptional(번역 데이터 캐싱 시 사용)TypeORM(0.3.x 또는 이상)MySQL(8.0 이상)Codes디렉터리 구조+ src/entites/modules/translation/decorators/translate.decorator.ts (파일 추가 필요! 이미지에 누락되어있네요..) translation.repository.ts, translat..
Docker(도커)란?
·Infra | Devops
Docker는 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼입니다. Docker는 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징하며, 이 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는 데 필요한 모든 것이 포함되어 있습니다. 출처: AWS에서 설명하는 Docker 도커의 핵심은 하나의 서버에서 여러 앱을 효율적으로 실행시킬 수 있도록 지원하는 소프트웨어 플랫폼입니다. 그런데 이러한 역할은 가상환경을 통해 동일한 기능을 지원하는 VMWare, Virtualbox와 다르다고 할 수 없습니다. 도커와 가상환경의 가장 큰 차이점은 구조에서 발생하는 효율성입니다. 하나의 서버에서 여러 앱을 실행시키 위해 가상 환경(VM)을 통한 방식은 하이퍼바이저 ..
Session/Cookie 그리고 Token(JWT)
·CS
아직까지 이 3가지를 모르고 사용했다니... 반성하겠습니다 Session 서버와 클라이언트의 연결이 활성화된 상태로 서버에서 가지고 있는 정보 Cookie 서버에서 발급된 세션을 열기 위한 키(세션 ID) JWT(Json Web Token) 사용자를 인증하고 식별하기 위한 토큰(Token) 기반 인증으로 세션과 달리 서버가 아닌 클라이언트에서 가지고 있는 정보 Token 인증을 위해 사용되는 암호화된 문자열. 인증 방식 I. Session / Cookie 방식 Session/Cookie 방식 인증은 세션 저장소(서버에 존재)를 필요로 하며, 세션 저장소는 로그인시 사용자 정보를 저장하고, 키(Key)로 사용할 수 있는 세션 ID 생성, 그리고 HTTP 헤더에 실어 Client에게 전송하며 Client(브..
Pre Commit 정의, 사용법 + Husky, lint-stage(eslint) 적용하기
·Javascript
이번주는 협업을 통해 Pre Commit을 사용해볼 수 있었다. Pre Commit은 git Hooks의 여러 상황에서 발생하는 스크립트 중 하나이며, git commit 이전 상황에서 실행되는 스크립트이다. 먼저 Pre Commit을 알기 전에 Git Hooks가 뭔지 알아야 된다. Git Hooks는 간단하게 말하면 git init 명령어 수행 시에 .git/hooks 디렉터리 안에 있는 파일들로 git commit, push, rebase 등의 명령어를 수행하기 전에 실행되는 스크립트들이다. 왜 Pre Commit을 사용하는지에 대한 이유는 간단하다. 코드 스타일의 일관성을 보장할 수 있다. 테스트 코드가 없거나, 테스트 코드 실행이 안되는 상황을 사전에 방지할 수 있다. 컴파일 에러가 난 코드를 ..
2on3