개발자
결제 기능을 개발 중인 주니어 개발자입니다! 현재 포트원(아임포트)의 API를 이용해 구독,단건 결제 기능을 개발 중에 있습니다. 결제 기능 특성상 민감한 패킷 손실 이슈에 대응하기 위해서 노력 중인데, 일반적으로 어떤 식으로 대응하는지 궁금해서 문의 드립니다. (현재로서는 cronjob 등을 통해 결제 로그 DB와 실 결제 금액 대조 등 밖에 생각이 안나네요..)
답변 1
인기 답변
HTTP는 TCP를 사용해 통신합니다. TCP는 패킷이 누락 없이 순서대로 도착하는 것을 보장하는 프로토콜이므로 패킷 손실은 대비할 필요가 없습니다. 이런 문제는 웹 어플리케이션 개발자가 아니라 커널 개발자가 고민하여야 할 대상입니다. 어플리케이션 개발자는 API 호출이 통째로 실패하는 상황에만 대비하면 됩니다. 예를 들어 환불 api 호출이 실패하였는데 환불이 완료된 것으로 처리한다던지 하는 상황만 방지하면 됩니다. 이런 상황은 패킷 손실이 아니라 코드의 논리적인 오류나 허점 때문에 발생합니다. 코드를 신중하게 작성하고 테스트를 열심히 하는 것 밖에는 예방책이 없습니다. 결제가 잘못되었을 때를 대비해 로그를 남기고, 주기적으로 비교하는 것은 좋은 아이디어입니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!