일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 항해플러스 백엔드
- Numpy
- 이것이자바다
- 인프런
- Spring
- 항해플러스 회고
- 자바의정석
- 스프링 부트와 JPA
- 스프링MVC
- JPA
- 항해플러스 백엔드 7기
- 시큐어코딩
- 자바연습문제
- Python
- 김영한
- 자바의정석 연습문제
- 항해플러스
- Java의정석
- 서블릿
- 스프링입문
- 자바공부
- 스프링
- 스프링 핵심원리
- java
- inflearn
- Secure Coding
- 불친절한SQL프로그래밍
- REGEXP_SUBSTR
- 제네릭
- 불친절한 SQL 프로그래밍
- Today
- Total
목록항해플러스 회고 (3)
Continuous Challenge
이번 주차에는 기존 로직을 Redis 의 캐시와 메모리를 이용하여 성능을 개선해보는 시간을 가졌습니다. 그 전에 캐시와 캐시전략에 대한 정리를 하였고, 캐시 스탬피드 현상에 대해서도 알아보았습니다.(github) hhplus-ecommerce/docs/cache.md at main · o3ozzvb/hhplus-ecommerceContribute to o3ozzvb/hhplus-ecommerce development by creating an account on GitHub.github.com 캐시란?캐시는 캐시 저장소에 한 번 구성된 응답 데이터를 저장해두었다가 동일한 요청이 오면 캐시 저장소에 저장되어있는 데이터를 반환하는 것이다. 캐시는 DB에 비해 실시간성은 떨어질 수 있지만, 성능 측면에서는 확..

6주차에는 진행중인 이커머스 서비스 프로젝트의 주요 기능(주로 동시성 제어가 필요한 기능) 분석 및 각 기능별로 적합한 Locking 방법을 찾기 위해 도입 및 비교/분석해보는 시간을 가졌습니다. 자세한 내용은 이전 글에 작성해 두었습니다. (아래 링크 첨부) [항해플러스 7기 백엔드] 6주차 - 주요 기능(포인트 충전/차감, 상품 재고 차감, 선착순 쿠폰 발급)주요 기능 분석1. 포인트 충전사용자가 자신의 계정에 포인트를 충전. 충전 금액이 포인트 잔액에 추가됨.단일 계정 기준으로 충전이 수행 되므로 충돌 가능성 낮음.충전 요청이 동시에 발생할developer-ek.tistory.com이번 글은 -습니다 투가 되어버렸네..각 랑킹방식의 개념 및 구현 방법1. 낙관적 락 (Optimistic Lock)낙..

4주차가 기능 구현이었다면, 5주차는 4주차에 구현한 코드를 고도화하는 것 이었다. ㅇ 4주차에 구현하지 못한 기능들 구현하기 - 잔액 히스토리 남기기 - 결제 완료 시 주문 상태 업데이트 하기 - 아키텍처에 맞게 파일 다시 정리하기 (DataPlatformService 이동, application -> infrastructure) ㅇ Filter 로 Logging 처리하기ㅇ Interceptor 로 사용자 검증하기ㅇ ExceptionHandler 로 예외 처리하기 ㅇ 동시성 통합 테스트 보완하기 이번 주차에는 3군데에서 동시성 제어에 대한 처리를 했다.1. 잔액 사용2. 재고 차감3. (선착순) 쿠폰 발급모두 비관적 락을 사용해서 처리를 하였다. 앞으로는 지금까지 구현한 코드를 기반으로 계속해서 ..