39 posts by judy
MSA-17. 구매 오픈 시각 기능 구현
결제 진입 메서드에 단순히 요청 시각과 구매 오픈 시각을 비교하는 로직을 추가했다. 그리고 엔드포인트를 통해 관리자가 특정 제품에 대한 StartTime을 지정할 수 있게 한다. 구매 오픈 시각이 설정된 제품은 비교 로직을 통해 구매 시간 전 결제를 할 수 없게 구현하였다.
MSA-16. 루아스크립트 로직 전환
처음 가상대기열 로직에 대해 어떻게 생각했냐면… 친구들이 좋아하는 가수나 축구, 야구 티켓팅을 매번 도와달라고 해서 (별로 잘하지도 않는데도) 인터파크나 여타 다른 사이트의 티켓팅을 경험해 본 적이 좀 있다. 그래서 내가 티켓팅을 했을 때의 그 프로세스를 그대로 구현하면 어떨까, 라는 생각으로 기획했던 구조가 가상 대기열이라는 구조였다. 놀이공원처럼 큐로 대기열을 제한하고, 재고가 풀리면 다시 그 대기열에 요청을 받아서 선착순 (재고수량) 명만 결제할 수 있게끔…? 취소가 생기면 취소 재고만큼 다시 대기열을 비우고 그...
MSA-15. 자동화 테스트 툴 제작
Python 스크립트로 과부하 테스트
MSA-14. Feign Client 적용기
기존에 느슨한 결합을 중요 순위 1순위로 생각해 결제-주문 로직을 제외한 Service간의 통신도 Kafka를 통한 비동기 통신으로 구현했었다. 다만 Kafka의 비동기 통신 특성 상, 이벤트 형식으로 발행되는 응답을 수신 Service가 제대로 받지 못 하는 상황이 발생하여 Latch로 차이를 뒀는데, 이럴 바에는 feign client 방식으로의 동기 통신과 Kafka의 비동기 통신을 적절히 혼용하는 방향이 더욱 간결하다고 판단하였다. 따라서 단순한 요청과 응답을 주고받는 건 feign client로 서비스 간 통신 로직을 변경하였다.