본문 바로가기

KT 에이블스쿨 (6기)104

[클라우드 서비스] Loosely Coupled Arch. _ 20241205 "급격한 트래픽 증가로 인한 성능 저하나 특정 리소스의 장애가 전체 서비스에 미치는 영향을 최소화하려면 어떤 아키텍처를 고려할 수 있을까?" ① 동기식 처리- 클라이언트에서 요청을 보냈을 때 서버가 처리 후 응답이 돌아와야 다음 동작을 수행 (그동안 클라이언트는 대기)- 설계가 매우 간단하고 직관적이지만 결과가 주어질 때까지 아무것도 못하고 대기해야한다. ② 비동기식 처리- 서버에 요청만 보내 놓고 응답이 오는 것과 상관없이 클라이언트는 대기 없이 다음 동작을 수행- 처리시간이 걸리더라도 그동안 다른 작업을 할 수 있으므로 자원을 효율적으로 사용할 수 있다.  1. Amazon SQS- 애플리케이션 간 또는 애플리케이션 구성 요소 간의 메시지 전달을 위한 대기열을 제공하는 완전 관리형 메시지 대기열 서비.. 2024. 12. 8.
[클라우드 서비스] Elasticity & HA _ 20241205 더보기* 실습 내용# 5. 부하 분산 및 자동 조정- Application Load Balancer 생성- 시작 템플릿 구성- Auto Scaling 그룹 생성- 작동 테스트  * 클라우드 서비스 수요 예측의 어려움- Over-provisioning : 불필요한 리소스(비용) 낭비- Under0provisioning : 고객 신뢰도, 만족도 혹은 매출 저하- Delayed allocation : 수요 변화에 따른 신속한 대응이 어려움 * 탄력성 확보- 수요에 따른 용량 요구사항 변화를 즉시 반영하기 위해 자동으로 컴퓨팅 리소스(ex.인스턴스 개수)를 확장 및 축소하여 대응할 수 있는 탄력성 확보가 반드시 필요하다. 1. Amazon EC2 Auto Scaling- 애플리케이션이 변화하는 트래픽 요구를 처.. 2024. 12. 8.
[클라우드 서비스] Microservices_20241205 1. 클라우드 네이티브(Cloud Native)- 클라우드 컴퓨팅 환경에서 현대적 애플리케이션을 구축, 배포 및 관리하는 접근 방식- 클라우드 이점을 최대한 활용할 수 있도록 애플리케이션을 구축 및 운영하고, 고객의 요구에 맞게 신속하게 업데이트할 수 있는 확장성, 유연성 및 복원력이 뛰어난 애플리케이션을 구축 및 운영한다. (1) 전통적인 애플리케이션 vs 클라우드 네이티브 애플리케이션 전통적인 애플리케이션클라우드 네이티브 애플리케이션구축/운영온프레미스(Data center) 환경클라우드 환경아키텍처모놀리스마이크로 서비스컴퓨팅 기술물리적 서버(+가상화)컨테이너조직/프로세스역할별 분리 (개발, 운영, QA 등)DevOps빌드/배포수작업CI/CD, 자동화 도구=> 한개로 전체를 통합 vs 여러 개로 작게 .. 2024. 12. 8.
[클라우드 서비스] Database Service _ 20241204 * RDS, DynamoDB, ElastiCache더보기실습 내용# 4. DB 인스턴스 생성- RDS 인스턴스 생성- RDS 인스턴스 접속- MySQL 명령문 실행1. 관계형 vs 비관계형 DB 관계형(RDB)비관계형(NoSQL)데이터행과 열Key-value, document, columnar, graph등스키마고정동적(유연)SQL지원미지원확장성수직적 확장 (Scale up)수평적 확장 (Scale out)가용성장애 조치(Fail-over) 구성 필요기본적으로 고가용성 지원활용- 명확한 스키마가 중요하고 데이터 구조 변경이 불필요할 경우- 데이터 변경(업데이트)이 잦은 경우- 데이터 구조 변경이 필요한 경우- 대규모 데이터의 읽기/쓰기 성능이 필요한 경우 (1) 인메모리 DB- In-memory DB- .. 2024. 12. 6.