본 내용은 내일배움캠프에서 활동한 내용을 기록한 글입니다.
💻 TIL(Today I Learned)
📌 Today I Done
✏️ 브로셔 서비스 핵심 기능 마무리
- CDN과 캐시 서버의 차이
- CDN
- 전 세계에 분산된 서버를 통해 콘텐츠를 사용자에게 빠르게 전달하는 데 중점을 둠
- 여러 지역에 위치한 엣지 서버로 구성되어 있음
- 사용자와 가장 가까운 서버에서 콘텐츠를 제공
- EX) 웹사이트의 이미지
- 캐시 서버
- 특정 서버 또는 네트워크 내에서 데이터를 저장
- 특정 애플리케이션이나 데이터베이스와 연결되어, 해당 시스템 내에서 데이터를 저장하고 관리함
- EX) 자주 요청되는 데이터나 결과를 저장
-
추후 도전 계획에서 Elastic Beanstalk를 선택한 이유
- 지금은 EC2 인스턴스 하나를 통해서 배포하도록 CI/CD 설정이 되어 있음
- 물론, 확장된 인스턴스에 맞도록 CI/CD 설정을 바꿀 수 있지만 Auto Scaling까지 생각해야 하기 때문에 너무 복잡해짐
- 그래서 Elastic Beanstalk를 통해 배포함으로써 Auto Scaling에 의해 Scaling Out된 인스턴스까지 CI/CD 가능하게 만들고 싶음
-
Elastic Beanstalk, ECS, EKS의 차이
- Elastic Beanstalk (EB)
- 웹 애플리케이션 및 서비스의 배포와 관리 간소화
- 자동 인프라 프로비저닝, 로드 밸런싱, 스케일링 관리
- 사용자가 애플리케이션 코드에 집중할 수 있도록 도움
- 난이도 : 낮음
- 사용자 친화적인 인터페이스로 복잡한 설정 없이 코드 업로드만으로 배포 가능
- Amazon ECS (Elastic Container Service)
- 컨테이너화된 애플리케이션을 관리하고 배포하는 서비스
- 자동 스케일링 및 로드 밸런싱 제공
- AWS Fargate와 함께 서버리스 컨테이너 실행 가능
- 난이도 : 중간
- Docker 및 컨테이너 개념 이해 필요, 설정 및 관리에 대한 학습 곡선 존재
- Amazon EKS (Elastic Kubernetes Service)
- Kubernetes 클러스터를 관리하고 운영하는 서비스
- AWS에서 Kubernetes 클러스터를 쉽게 생성하고 운영할 수 있도록 지원
- EKS는 ECS보다 Kubernetes 생태계의 다양한 도구와 통합할 수 있는 장점이 있음
- 난이도 : 높음
- Kubernetes의 복잡성 이해 필요, 클러스터 관리와 보안 등의 직접적 다루기
- DB 락과 RedLock의 차이
- DB 락
- 대상 : 데이터베이스 내의 특정 데이터, 즉 테이블의 행(row)이나 전체 테이블, 또는 특정 페이지
- 데이터베이스 내에서의 동시성 제어를 위한 전통적인 방법
- 주로 단일 데이터베이스 인스턴스 내에서 사용
- RedLock
- 대상 : Redis 서버에 저장된 특정 키(key)
- 분산 시스템에서 안전하게 락을 관리하기 위한 알고리즘
- 여러 서버에서의 자원 충돌을 방지하는 데 초점을 맞춤
📌 Tomorrow's Goal
✏️ 최종 발표회
📌 Today's Goal I Done
✔️ 발표 스크립트 작성
-
오늘은 발표 내용에 대한 피드백을 계속 진행함
-
특별히 다른 조의 분들과 모여서 발표 연습을 진행함
-
이 때, 헷갈리거나 잘 모르는 질문들을 오늘 TIL로 정리함
-
그리고 팀원들이 구현한 기능들에 대해서도 구체적인 코드까지는 아니더라도 어떻게 돌아가는지는 알아야 질문이 들어와도 대답할 수 있음