2025/02 4

[항해플러스 백엔드후기] 9주차 회고 - 카프카는 신이야

[과제]9주차의 과제는 다음과 같았다   - docker 를 이용해 kafka 를 설치 및 실행하고 애플리케이션과 연결 후 카프카 consumer, producer 를 연동 및 테스트 - 카프카의 발행이 실패하는 것을 방지하기 위해 Transactional Outbox Pattern를 적용 카프카의 발행이 실패한 케이스에 대한 재처리를 구현 ( Scheduler or BatchProcess )  그동안에 숱하게 들어왔던.. 카프카는 신이야 ! 에서 드디어 카프카를 연동해보고 구현해보는 주차가 다가왔다사실은 실무에서도 카프카를 사용하고 있지만 내가 직접 연동해보고 어떠한 전략을 사용할지는 고민해본적은 없어서 기초적인 개념은 이해하고 있지만 제대로 실습을 해본다는 느낌으로 과제를 진행했다[과제 해결 과정..

🔔[항해99]/WIL 2025.02.24

[항해플러스 백엔드후기] 8주차 회고 - 쿼리튜닝 - ("적절한" + 인덱스) = 0

[개요]어느새 8주차도 무사히 지나갔다 !!처음 시작했을 때는 언제 10주를 다하나.. 어떻게 버틸까 아찔했는데 이제는 벌써 수료식이 코앞이라는 생각에 싱숭생숭하다 [과제]8주차의 과제는 다음과 같았다 - 나의 시나리오에서 수행하는 쿼리들을 수집해보고, 필요하다고 판단되는 인덱스를 추가하고 쿼리의 성능개선 정도를 작성하여 제출 - 자주 조회하는 쿼리, 복잡한 쿼리 파악 - Index 추가 전후 Explain, 실행시간 등 비교- 서비스의 규모가 확장되어 MSA의 형태로 각 도메인별로 배포단위를 분리해야한다면 그 분리에 따른 트랜잭션 처리의 한계와 해결방안에 대한 서비스 설계 문서 작성- 실시간 주문(이커머스), 좌석예약 정보(콘서트)를 데이터 플랫폼에 전달(mock API 호출)하는 요구사항 등..

🔔[항해99]/WIL 2025.02.17

[항해플러스 백엔드후기] 7주차 회고 - 오쪼쪼.. 나의 임시 보관함..캐싱

[개요]지난 주 고비를 넘고나니 상대적으로 수월해진 느낌이다여전히 하루하루 수면부족에 시달리고는 있지만, 고지가 눈앞에 보이니 해낼 수 있다라는 생각으로포기하지말기. 한주 한주 과제를 제출만 하자라는 생각으로 천천히 해내어 보기 [과제]7주차의 과제는 다음과 같았다  - 조회가 오래 걸리는 쿼리에 대한 캐싱, 혹은 Redis 를 이용한 로직 이관을 통해 성능 개선할 수 있는 로직을 분석하고 합리적인 이유와 함께 정리한 문서 제출 - 선착순 쿠폰 발급 기능에 대해 Redis 기반의 설계를 진행하고 적절하게 동작할 수 있도록 쿠폰 발급 로직 개선 이번에는 캐싱과 Redis에 대해 다루게 되었다.캐싱의 중요성에 대해서는 잘 알고 있었지만 실무에서는 사용하지 않고, Redis는 사용하지만 이미 모듈로 구현된..

🔔[항해99]/WIL 2025.02.13

[항해플러스 백엔드후기] 6주차 회고 - 하루하루가 고비

[개요]절반이 넘어가면서 앞으로가 힘들지는 않을거라는 생각은 하지 않았지만그래도 이렇게까지 일이 겹치면 힘들수 있겠구나 하고 느낄 수 있었던 한주였다[과제]6주차의 과제는 다음과 같았다 - 시나리오에서 발생할 수 있는 동시성 이슈에 대해 파악 후 가능한 동시성 제어 방식들을 도입 및 각각의 장단점을 파악 후 내용을 정리 제출 - DB Lock 을 활용한 동시성 제어 방식에서 해당 비즈니스 로직에서 적합하다고 판단하여 차용한 동시성 제어 방식을 구현하여 비즈니스 로직에 적용 통합테스트 등으로 이를 검증하는 코드 작성 및 제출 지난 주차에 이어서 좀더 다양한 동시성 제어 방식들에 대해서 배우고, 그 중에 DB 락에 좀더 초점을 맞추어서 비교하여 보고서를 작성하고 기존 로직을 개선하는 것에 초점이 맞춰졌다...

🔔[항해99]/WIL 2025.02.03