Ecosyste.ms: Timeline
Browse the timeline of events for every public repo on GitHub. Data updated hourly from GH Archive.
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
결제 기능에 대한 동시성 제어 테스트 잔액이 50000이 있고, 주문할 금액이 12000씩 10번을 동시에 요청 예상 성공 카운트 4, 실패 카운트 6, 남은 잔액 2000
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
주문 기능에 대한 동시성 제어 테스트 재고가 20개 존재하는 상품에 대해 1개씩 30번 주문 요청 예상 성공 카운트 20, 실패 카운트 10, 남은 재고량 0
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
상품 재고 차감에 대한 동시성 제어 테스트 상품 재고가 3개 있을 때, 1개씩 차감하는 동작을 동시에 5번 요청 예상 성공 카운트 3, 실패 카운트 2, 남은 상품 재고 0
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
잔액 충전 기능에 대한 동시성 제어 테스트 잔액이 0원일 때, 10000원 충전 요청을 동시에 5번 수행 데이터 조작 요청이 충돌나지 않고 최종적으로 잔액이 50000원인지 검증
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
잔액 차감에 대한 동시성 제어 테스트 10000원 잔액 보유 중일 때, 3000씩 5번 차감 동시 요청 예측 성공 카운트 3, 실패 카운트 2, 남은 보유잔액 1000
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
비동기 이벤트로 처리한 외부 데이터 플랫폼에게 전송 요청에서 예외가 발생할 경우에도 비즈니스 로직의 트랜잭션은 정상적인지 검사하기 위해 임의의 예외를 발생시켰습니다.
lgm1007 opened a pull request on lgm1007/hhplus_ecommerce
[Step8] 비즈니스 로직 통합테스트 및 API 로직 주입하기
### 변경 사항 * 비즈니스 로직 통합 테스트 작성 * 비용 충전 / 차감 * 상품 조회 / 재고 차감 * 주문 * 결제 * 장바구니 상품 추가 / 제거 * 상위 상품 통계 조회 * API에 Facade 및 Service 주입하여 비즈니스 로직 붙이기 * 테스트 진행하면서 오류가 발생했던 문...lgm1007 pushed 1 commit to feature/step8 lgm1007/hhplus_ecommerce
- modify: 외부 플랫폼 요청 중 예외 발생했다고 가정 6f4544a
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- modify: 결제 Facade 메서드에 Transactional 적용 907ccd7
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- refactor: 주문 테이블에 대한 네이밍 Order -> OrderTable로 변경 (SQL 문법과 동일한 네이밍) 258eeee
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- modify: Pageable을 인자로 넣은 JPA method에는 JPQL 사용 b0364d6
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- refactor: DTO 이름 수정건에 대한 jpaRepository 내용 수정 f489ec3
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- modify: 카트 데이터 변경 Response 정적 팩토리 메서드 추가 0cbc866
lgm1007 pushed 2 commits to feature/step7 lgm1007/hhplus_ecommerce
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
`findAllByIdInWithLock(@Param("ids") ids: List<Long>)`으로 처음에는 주문하는 상품들에 대한 목록을 Lock 걸려 했지만, 실제로는 주문 상품들에 대해 순회하며 `findByIdWithLock(@Param("id") id: Long)` 으로 단일 레코드를 조회하여 재고 차감 기능을 구현했습니다. 이렇게 구...
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
사용자의 잔액에 대해 충전/차감할 때 동시성 제어를 위해 PESSIMISTIC_LOCK을 걸었습니다.
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
`findAllByIdInWithLock(ids: List<Long>)`으로 처음에는 주문하는 상품들에 대한 목록을 Lock 걸려 했지만, 실제로는 주문 상품들에 대해 순회하며 `findByIdWithLock(@Param("id") id: Long)` 으로 단일 레코드를 조회하여 재고 차감 기능을 구현했습니다. 이렇게 구현한 이유는 리스트로 `s...
lgm1007 created a review comment on a pull request on lgm1007/hhplus_ecommerce
외부 데이터 플랫폼에 데이터를 전송하는 동작을 Spring Event로 처리했습니다. 비동기 이벤트로 처리하기 위해 `@Async`로 처리했습니다. 결제 작업이 수행되고 트랜잭션이 커밋될 때 이벤트 발행을 위해 TransactionalEventListener AFTER COMMIT 으로 처리해야 하나 고민이 되긴 합니다..🤔
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- modify: findAllByIdInWithLock 메서드의 파라미터에 @Param 어노테이션 추가 b30444c
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- modify: 잔액 차감 메서드에 @Transactional 붙이기 fd989ee
lgm1007 pushed 1 commit to feature/step7 lgm1007/hhplus_ecommerce
- feat: 잔액 충전 또는 차감할 때 BalanceHistory 데이터 저장 3b8d718
lgm1007 pushed 2 commits to feature/step7 lgm1007/hhplus_ecommerce
lgm1007 pushed 7 commits to feature/step7 lgm1007/hhplus_ecommerce
- feat: 외부 데이터 플랫폼에 전송하는 동작, 페이크 객체 생성하여 구현 e9da614
- test: 이벤트 퍼블리셔 추가함에 따른 단위테스트 Mocking 수정 7564a59
- feat: 잔액 충전 로직 구현 2a62d33
- test: 잔액 충전 기능 단위테스트 작성 5b73958
- feat: 장바구니 추가/삭제/조회 기능에 대한 Service 로직 구현 60b0d22
- feat: 주문 시 재고 차감 후에 해당 사용자의 장바구니 목록 삭제하는 단계 추가 c1a1c44
- feat: 상위 판매 상품 통계 목록을 조회하는 기능 구현 59c975f