AWS SAA-C03 한국어 샘플 1번
·
스케쥴/시험
문제1한 회사가 Amazon EC2 인스턴스에서 실행될 새로운 웹 애플리케이션을 설계하고 있습니다. 애플리케이션은 백엔드 데이터 저장을 위해 Amazon DynamoDB를 사용합니다. 애플리케이션 트래픽은 예측할 수 없습니다. T 회사에서는 데이터베이스에 대한 애플리케이션 읽기 및 쓰기 처리량이 보통에서 높을 것으로 예상합니다. 회사는 애플리케이션 트래픽에 대응하여 확장해야 합니다. 이러한 요구 사항을 가장 비용 효율적으로 충족하는 DynamoDB 테이블 구성은 무엇입니까? A. DynamoDB 표준 테이블 클래스를 사용하여 온디맨드 모드로 DynamoDB를 구성합니다. B. DynamoDB Standard Infrequent Access(DynamoDB Standard-IA) 테이블 클래스를 사용하여 ..
[MSA] SAGA 패턴은 무엇?
·
스케쥴/스터디
1. MSA에서의 트랜잭션 문제   - 분산 환경에서 단일 DBMS의 트랜잭션 기능으로 해결 불가   - Two-Phase Commit의 한계: 성능 문제, 서비스 간 통제 어려움2. SAGA 패턴   - 정의: 마이크로서비스 간 이벤트 교환으로 분산 환경에서 원자성 보장   - 특징: 트랜잭션 관리 주체가 Application, 최종 일관성 달성3. SAGA 패턴의 종류   a) Choreography-based SAGA      - 각 서비스가 자체적으로 트랜잭션 관리, 이벤트 발행      - 장점: 구성 용이      - 단점: 전체 트랜잭션 상태 파악 어려움   b) Orchestration-based SAGA      - 중앙 Saga Manager가 트랜잭션 조정      - 장점: 구현/테..
[항해99 취업리부트 WIL] 8주차
·
스케쥴/스터디
Weekly I Learned: 이벤트 드리븐 아키텍처로의 전환과 나의 예약 조회 API 구현이번 주에는 기존의 모놀리식 아키텍처를 이벤트 드리븐 아키텍처로 전환하는 과정에서 많은 것을 배웠습니다. 특히 나의 예약 조회 API를 구현하면서 여러 가지 도전과 해결책을 경험했습니다.1. 한 주 동안 학습한 것들 나열이벤트 드리븐 아키텍처의 기본 개념과 구현 방법Kafka를 이용한 마이크로서비스 간 비동기 통신Redis를 활용한 캐싱 전략Server-Sent Events (SSE)를 이용한 실시간 데이터 전송분산 시스템에서의 데이터 일관성 유지 방법2. 학습한 내용의 구현 필요성기존의 모놀리식 아키텍처에서는 단일 데이터베이스를 사용하여 예약 정보를 쉽게 조회할 수 있었습니다. 하지만 마이크로서비스 아키텍처로 ..
[항해99 취업리부트 WIL] 7주차
·
스케쥴/스터디
모놀리식 아키텍처에서 이벤트 드리븐 아키텍처로1. 한 주 동안 수행한 작업예약 서비스 (Reservation Service)의 이벤트 드리븐 아키텍처로의 전환Kafka 설정 추가: Kafka 프로듀서와 컨슈머 설정을 추가하여 예약 서비스가 이벤트를 주고받을 수 있도록 준비.이벤트 클래스 작성: ReservationRequestedEvent, SeatStatusUpdatedEvent, PaymentCompletedEvent 등 예약과 관련된 이벤트 클래스를 작성.예약 요청 처리 변경: 예약 요청이 들어오면 ReservationRequestedEvent 이벤트를 Kafka를 통해 전송하도록 변경.좌석 상태 업데이트 처리: SeatStatusUpdatedEvent 이벤트를 수신하여 좌석 상태를 업데이트하고 예..
[항해99 취업리부트 WIL] 6주차
·
스케쥴/스터디
리팩토링 및 CI/CD 최적화1. 개요지난 2주 동안, 시스템 리팩토링과 CI/CD(Continuous Integration/Continuous Deployment) 최적화 작업에 중점을 두고 다양한 기술과 방법을 학습하고 적용하였습니다. 주요 학습 내용은 시스템 성능 향상, 코드 유지보수성 개선, 이벤트 기반 아키텍처 도입, 데이터 무결성 보장, 그리고 CI/CD 파이프라인 구축을 포함합니다.2. 주요 리팩토링 작업2.1 ReserveRequest 리팩토링배경: 결제 생성 요청 로직이 Reservation 엔티티에 포함되어 있어 단일 책임 원칙(SRP)에 위배되었습니다.변경 내용: 결제 생성 요청 로직을 Reservation에서 ReserveRequest로 이동하였습니다.기존: 결제 생성 로직이 Res..
[항해99 취업리부트 WIL] 5주차
·
스케쥴/스터디
Week In Learning (WIL) - 지난 두 주간의 학습 정리 주간 학습 목표: 지난 두 주 동안 MySQL 데이터베이스 설정, Docker를 활용한 개발 환경 구성, Spring Security와 JWT 인증, 이메일 인증 구현, 그리고 사용자 마이페이지 및 비밀번호 수정 기능을 학습했습니다. 첫째 주: MySQL 데이터베이스 설정:     Docker Compose를 활용한 MySQL 컨테이너 설정.     docker-compose.yml, Dockerfile, my.cnf, 초기화 스크립트 등을 통해 MySQL 환경 구성. 문제 해결:     Base64..
[항해99 취업리부트 TIL] 4주차 4일
·
스케쥴/스터디
오늘 학습한 내용은 무엇인가요?적어도 대부분의 배수문제 요약: 주어진 정수 배열에서 세 수의 조합을 생성하고, 이 조합들 중 최소 공배수를 계산하여 가장 작은 최소 공배수를 찾는 문제입니다.해결 방법 요약:입력 처리:버퍼에서 입력을 읽어와 정수 배열로 변환합니다.조합의 크기 계산:조합 공식인 ( N! / ((N-R)! \times R!) )를 사용하여 조합의 크기를 계산합니다.조합 생성:세 수의 모든 조합을 생성하고 배열에 저장합니다.최소 공배수 계산:생성된 각 조합에 대해 최소 공배수를 계산하고, 결과를 배열에 저장합니다.최소값 찾기:최소 공배수 배열에서 가장 작은 값을 찾아 출력합니다.public class Main { public static void main(String[] args) thr..
[항해99 취업리부트 TIL] 4주차 3일
·
스케쥴/스터디
학습한 내용은 무엇인가요?동적 프로그래밍(DP) 알고리즘 개요DP는 문제를 작은 하위 문제로 나누어 해결한 후 그 결과를 결합하여 원래 문제를 해결하는 기법이다.두 가지 특징:중복되는 하위 문제최적 부분 구조구현 방식:탑다운(메모이제이션)바텀업(테이블화)피보나치 수열피보나치 수열은 DP의 대표적인 예제이다.점화식: F(n) = F(n-1) + F(n-2)초기 조건: F(0) = 0, F(1) = 1탑다운 방식재귀와 메모이제이션을 이용해 구현.중복 계산을 피하기 위해 이미 계산된 결과를 저장.int[] memo = new int[n + 1]; 배열을 -1로 초기화.fib(n, memo) 함수 호출:if (n if (memo[n] != -1) return memo[n];memo[n] = fib(n - 1, ..