전체 글
Nest.js + Redis
▶ 들어가기 전 친구들과 학교를 위한 프로젝트를 진행하면서 로그인 로직을 구현할 일이 생겼습니다. JWT를 사용하기로 했는데 JWT를 저장할 데이터베이스를 고민하다 보편적으로 세션 스토어나 캐시를 Redis로 많이 이용한다기에 Redis를 택했습니다. Redis를 사용해 본 경험이 처음이었고 생각보다 공수가 많았기에 정리를 남깁니다. 위와 같은 로직을 바탕으로 코드를 작성했습니다. ▶ Redis? Redis는 현재 가장 인기 있는 Key-Value형 스토어로서 Redis의 다양한 특징 덕분에 고속I/O에 적합함으로 캐싱, 세션 스토어로서 널리 사용되고 있습니다. 고성능, 고속I/O Key-Value형 DB 인메모리형 DB 다양한 기능 제공 -> TTL 설정... 등 ▶ redis.service.ts 작성..
AWS Lambda + API Gateway
▶들어가기 전 AWS Lambda 입문하기(https://thinking-dev.tistory.com/1)와 이어집니다. ▶AWS API Gateway AWS API Gateway는 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전관리형 서비스입니다. 애플리케이션이 백엔드 서비스의 데이터, 비즈니스 로직 또는 기능에 액세스할 수 있는 "정문" 역할을 합니다. AWS의 서비스 및 외부 서비스를 위한 API를 생성/관리하는 서비스 HTTP/Websocket 프로토콜 지원 Serverless 서비스 -> 별도로 프로비전하거나 서버를 관리할 필요 없음 API Key를 사용해 보안 관리와 사용량 추적 가능 ▶AWS Lambda에 API Gateway를 트리거로 설정..
AWS Lambda 입문하기
▶ 들어가기 전 최근 취업을 준비하면서 사전 질문 또는 면접 질문에서 Serverless 환경에 대한 질문이 많았습니다. 아무래도 최신 트랜드인 것 같습니다. 하지만 저는 Serverless 환경을 구축해본 경험은 물론 뭔지도 몰랐기에 단편적으로 공부하고자 정리를 남깁니다. GCP Cloud Functions나 Azure Functions 등 Serverless 환경을 구성할 수 있는 많은 서비스들이 존재하지만 역시나 부동의 원탑 AWS의 Lambda만큼 대중적이고 강력한 서비스가 없는 것 같습니다. ▶ Serverless? Serverless는 Server와 less( ~이 없는 )의 합성어로 서버가 존재하지 않는 환경을 뜻합니다. 정확한 작동원리는 나중에 다루겠으나 간단하게 요약하자면 이벤트 발생 -..