반응형 전체 글350 고가용성 및 확장성 (ELB 및 ASG) 고가용성 및 확장성 고가용성 고가용성은 애플리케이션 또는 시스템을 적어도 둘 이상의 AZ나 데이터센터에서 가동 하는 것이다. 고가용성은 데이터 센터에서의 손실에서 살아남아야 한다. 즉, 가동중인 데이터센터에서 문제가 생겨도 다른 데이터 센터에서 돌아가야 한다. 동일한 애플리케이션의 동일한 인스턴스를 멀티 az에서 가동한다. 다중 az가 활성화된 자동 스케일러 그룹이나 로드 밸런서에서도 사용한다. 고가용성은 수동적일 수도 있다. (ex: RDS Multi AZ) 활성형도 존재한다. (수평 확장을 하는 경우) 확장성 수직 확장성 수직확장성은 인스턴스의 크기를 확장한다. 시스템의 스펙을 올려리는 것이다. 데이터베이스와 같이 분산되지 않은 시스템에서 주로 사용한다. 하드웨어 제한이 걸려있기 때문에 한계가 존재한.. 2023. 6. 28. EC2 Instance Storage EBS Volume EBS란 Elastic Block Store의 줄임말이다. EBS Volume는 인스턴스가 실행 중인 동안 연결 가능한 네트워크 드라이브다. EBS Volume를 사용하면 인스턴스가 종료된 후에도 데이터를 지속할 수 있다. 이것이 바로 ebs 볼륨을 쓰는 목적이다. EC2를 재생성해 EBS Volume을 마운트하면 기존의 EC2 데이터를 사용할 수 있다. CCP 레벨의 EBS Volume은 한번에 하나의 인스턴스에만 마운트할 수 있다. CCP 레벨은 하나의 EBS는 하나의 EBS에만 마운트 가능하고, Associate 레벨은 일부 EBS 다중 연결이 가능하다. 그러나 인스턴스 1개에 2개의 EBS 볼륨이 연결되는 건 문제가 없다. EBS Volume을 생성할 때는 특정 가용 영역에서만.. 2023. 6. 23. 동시성 문제 해결하기 현재 프로젝트의 재고 도메인 코드에 문제가 있다는 것을 알아차렸다. 문제는 여러 명의 사용자가 동시에 재고 감소 로직을 실행한다면 동시성 이슈가 발생하는 것이다. 마침 동시성 관련 강의를 인프런에서 발견했고 이를 적용해보았다. 프로젝트 테이블 이해 재고 모델과 옵션 모델은 N:M 관계이다. 따라서 중간 테이블이 존재한다. 중간 테이블의 옵션 id 외래키를 in 절로 사용해 재고 엔티티를 찾는다. 테스트할 데이터는 사전에 DB에 미리 넣어놓았다. (id가 9L인 재고 테이블 Row) 먼저 문제 상황을 테스트 코드로 작성해보았다. @Test void 재고_감소() throws InterruptedException { //given int threadCount = 100; ExecutorService exec.. 2023. 6. 22. 도메인과 테이블을 설계하고 개선하기 백엔드 파트는 혼자인 이커머스 개발 프로젝트를 진행하고 있습니다. 이번 포스팅에서는 도메인, 테이블을 설계하고 개선한 부분에 대한 글을 쓰겠습니다. 혼자 생각하고 여러 자료를 참고하며 진행했으므로 미흡한 부분이 있습니다. 도메인 설계 현재 요구사항에 따르면 도메인은 다음과 같다. 회원 도메인 상품 도메인 장바구니 도메인 주문 도메인 설계 과정을 살펴보고 상위 도메인에 포함된 하위 도메인도 살펴보겠다. 회원 도메인 회원 도메인은 회원과 이메일로 이루어진다. 회원은 일반 회원과 판매자 회원으로 구분된다. 테이블을 살펴보면 1:1 관계다. 상품 도메인 상품 도메인은 상점, 상품, 상품 옵션 그룹, 상품 옵션, 재고로 이루어진다. 상점은 상품과 1:N 관계다. 상품은 상품 옵션 그룹과 1:N 관계다. 예시를 들.. 2023. 6. 21. AWS EC2 - SAA LEVEL Public IP, Private IP, Elastic IP ip는 ipv4와 ipv6가 있다. ipv4를 주로 사용하지만 AWS는 ipv6도 지원한다. ipv6는 보통 사물 인터넷에서 많이 쓰인다. Public IP를 공용 ip라 부르고, Private IP는 사설 ip, Elastic IP는 탄력적 ip라고 부르겠다. 공용 ip가 있다면 인터넷 전역에서 액세스가 가능하다. 전체 웹에서 유니크하기 때문이다. 구글에 공용 ip를 검색하면 지리적 위치 또한 쉽게 찾을 수 있다. 사설 ip는 사설 내트워크 내에서만 접근이 가능하다. 전체 웹에서 유니크하지 않고, 사설 망에서만 유니크하면 된다. NAT 장치와 프록시 역할을 할 인터넷 게이트웨이를 통해 인터넷에 연결된다. 지정된 일정 ip 범위에서 사설 ip를.. 2023. 6. 20. AWS EC2 기초 EC2 EC2는 정말 인기 있는 AWS 서비스이며, Elastic Compute Cloud의 약어다. EC2는 하나의 서비스가 아닌 다음과 같은 많은 것을 포함하고 있다. 임대 가능한 VM 데이터를 가상 드라이브 EBS 볼륨에 저장 가능 Elastic Load Balancer(ELB)로 분산 가능 Auto Scaling Group를 사용해 서비스 확장 가능 EC2의 기초를 아는 것이 클라우드 동작 방식을 이해할 때 필수적이다. 클라우드는 언제든 컴퓨터를 대여할 수 있는데 대표적인 예시가 EC2이다. EC2 설정 옵션과 크기 EC2를 처음 생성할 때 다양한 설정 옵션(운영체제, RAM, storage, 방화벽 등)이 존재한다. EC2를 생성할 때 리눅스, 윈도우, 맥을 운영체제로 선택할 수 있다. 생성할 .. 2023. 6. 19. 이전 1 ··· 10 11 12 13 14 15 16 ··· 59 다음 반응형