169developer9973
@169developer9973
Học viên
5,844
Đánh giá khóa học
477
Đánh giá khóa học
4.8
안녕하세요. 지식공유자 최상용입니다.
많은 오픈소스에 기여한 경험이 있는 현직 백엔드 개발자입니다.
- Spring Data Mongo Contributor
- querydsl Contributor
- grpc-kotlin Contributor
- ksp Contributor
- mybatis Contributor
Khóa học
Đánh giá khóa học
- Cách giải quyết các vấn đề đồng thời bằng hệ thống kiểm kê
- Cách giải quyết các vấn đề đồng thời bằng hệ thống kiểm kê
- Tìm hiểu giao dịch phân tán qua hệ thống đặt hàng
- Cách giải quyết các vấn đề đồng thời bằng hệ thống kiểm kê
- Hệ thống sự kiện đến trước được phục vụ trước để học thông qua thực hành
Bài viết
Hỏi & Đáp
레디선 테스트코드에서 채널이름은 없어도 되는건가요?
gibbs 님 안녕하세요.답변이 늦어져서 죄송합니다.redis cli 를 활용한 테스트는 pub-sub 기능이 어떻게 동작을 하는지 눈으로 확인해보는 목적이었습니다.그러기 위해선 특정 채널을 명시적으로 입력을 하여야 했습니다.자바소스로 옮겨서 테스트 할 때는 채널명을 지정하지 않은이유는 Redisson 라이브러리를 활용하여 락획득을 시도할때 키의 이름을 딴 채널명을 라이브러리내부에서 구독을 하게 되며 해제시에 해당 채널로 해제 메시지를 보내기때문에 별도로 지정하지 않아도 되는것입니다.감사합니다.
- Lượt thích
- 0
- Số bình luận
- 2
- Lượt xem
- 37
Hỏi & Đáp
주문이벤트 발행에서 이벤트 발행을 동기적으로 처리하는 이유
발그레지는개발님 안녕하세요!2가지로 나누어볼 수 있을것 같아요.afterCommit 에서 처리를 한 이유DB 의 트랜잭션과 분리하여 이벤트는 발행되고 DB 는 롤백되는 상황을 막기 위함입니다.동기로 발송한 이유kafka 에 이벤트를 발행하는것은 소요시간이 그리크지 않은 작업으로 비동기로 할 이유가 없었기때문에 동기적으로 처리하였습니다.전송 실패처리이것은 동기, 비동기 상관없이 잘 처리가 되어야 할 것 같습니다.말씀하신대로 전송 보장이 되어야 한다면 outbox pattern 을 활용하여 처리할 수 있을 것 같습니다.추가적인 질문이 있으시다면 말씀해주세요!
- Lượt thích
- 0
- Số bình luận
- 1
- Lượt xem
- 44
Hỏi & Đáp
spring-retry가 spring-core 패키지로 편입되었습니다.
도등어님 안녕하세요!트러블슈팅을 한 경험을 공유해주셔서 감사드립니다. 😃
- Lượt thích
- 2
- Số bình luận
- 1
- Lượt xem
- 105
Hỏi & Đáp
TCC 주문 도중 문제 발생 시 상태 해소 전략 관련 질문입니다.
도등어님 안녕하세요.말씀하신대로 reservation entity 가 맞습니다.product_reservation, point_reservation 을 의도했습니다.감사합니다.
- Lượt thích
- 0
- Số bình luận
- 1
- Lượt xem
- 60
Hỏi & Đáp
TCC PointService tryReserve 구현 관련 질문입니다.
도등어님 안녕하세요.지금 다시보니 로직에 버그가 있었네요 ㅠㅠ 아래와 같이 예약된금액과 예약할 금액을 모두 빼주어야 할 듯 합니다.public void reserve(Long reserveAmount) { long reservableAmount = this.amount - reserveAmount - this.reservedAmount; if (reservableAmount 말씀해주셔서 감사합니다. 강의내용은 추후 업데이트 하도록 하겠습니다.
- Lượt thích
- 0
- Số bình luận
- 2
- Lượt xem
- 54
Hỏi & Đáp
[TCC 구현하기(2) - 동시성문제 해결하기] 질문
홍승현님 안녕하세요.질문에 대한 답변이 늦어져서 죄송합니다.경합이 자주, 많이 생기는 경우에는 낙관적락보다 비관적락이 유리한것이 맞습니다.다만, 커머스의 특성상 주문이 많더라도 하나의 품목에 동시에 주문이 오는경우는 적을것이라고 생각됩니다.이러한 특성을 생각한다면 여전히 낙관적락이 유리할것 같습니다.강의에 대해 좋은말씀 해주셔서 감사합니다!
- Lượt thích
- 0
- Số bình luận
- 2
- Lượt xem
- 77
Hỏi & Đáp
ApplyService와 Consumer서비스의 db공유?
차성호님 안녕하세요!말씀하신대로 consumer 와 service 에서 동일한 db 를 공유하고 있기에 가능한것입니다.감사합니다.
- Lượt thích
- 0
- Số bình luận
- 2
- Lượt xem
- 54
Hỏi & Đáp
안녕하세요 강사님 질문있습니다.!!
정인호님 안녕하세요.제가 이해한게 맞다면 OrderConfirmEvent 를 발행하면 재고, 쿠폰, 적립금을 한번에 처리를 한다고 이해를 했는데요.이렇게 되면 예외를 핸들링하기가 힘들어지기때문에 순차적으로 진행을 할 것 같습니다.예를들어 OrderConfirmEvent 를 발행하면 재고를 감소시키고 재고감소에 성공하면 쿠폰을 소진시키고 주문이 정상적으로 되면 적립금을 주는식으로 개발을 할 것 같습니다.병렬로 수행하게 되면 다른작업들이 끝났는지 안끝났는지 검사를 해야하는 로직을 추가해야 하기때문에 로직이 복잡해질것 같기때문입니다.만약 병렬로 수행을 해야한다면 실패이벤트를 받았을 때 다른 이벤트들이 종료되었는가? 에 대한 체크를 해야 할 것 같습니다.쿠폰이 실패되었을 때 재고는 처리되었는지? -> 재고가 처리되어있지 않다면 기다렸다가 다시 처리 감사합니다.혹시 또 질문이 있으시다면 댓글로 남겨주세요!
- Lượt thích
- 0
- Số bình luận
- 2
- Lượt xem
- 78
Hỏi & Đáp
테스트 코드
퓨퓨님 안녕하세요.어떤것을 테스트하는것이 목적인가? 를 생각해보면 좋을것 같습니다.비즈니스로직을 검증할 때 저는 카프카 발행을 했는가? 정도만 검증을 하는편입니다.컨슈머쪽은 로직에 대한 테스트를 하는편입니다.통합테스트는 별도로 진행하진 않았는데 필요하다면 진행할 수 있을것 같습니다.대부분의 경우엔 카프카 메시지 발행여부정도와 실제로 동작하는지 확인하는정도로만 했던것 같습니다.감사합니다.
- Lượt thích
- 0
- Số bình luận
- 2
- Lượt xem
- 71
Hỏi & Đáp
낙관적 락을 사용할 떄 차이점
문수님 안녕하세요!강의에서는 낙관적락을 사용한다는것을 명시적으로 나타내기 위해서 삽입하였습니다!어노테이션은 필요에따라 사용하시면 될 것 같습니다!감사합니다
- Lượt thích
- 0
- Số bình luận
- 2
- Lượt xem
- 118






