결제 시스템에서의 트랜잭션 설계하기 (1부)
1부. 트랜잭션 설계와 멱등성 보장 시리즈 구성 이 글은 결제 시스템을 실제로 구현하면서, 설계가 왜 그렇게 될 수밖에 없었는지를 설명하며 연재해 나가려 합니다. 결제 시스템은 보통 코드만 보면 단순해 보입니다. Payment 상태 바꾸고, PG(PSP) 승인 API 호출하고, 결과 저장하면 끝처럼 보입니다. 그런데 운영 환경에서 진짜 문제는 성공...
1부. 트랜잭션 설계와 멱등성 보장 시리즈 구성 이 글은 결제 시스템을 실제로 구현하면서, 설계가 왜 그렇게 될 수밖에 없었는지를 설명하며 연재해 나가려 합니다. 결제 시스템은 보통 코드만 보면 단순해 보입니다. Payment 상태 바꾸고, PG(PSP) 승인 API 호출하고, 결과 저장하면 끝처럼 보입니다. 그런데 운영 환경에서 진짜 문제는 성공...
저희의 핵심 요구사항은 외부 PG사(Payment Gateway) 를 활용해 안정적인 결제 시스템을 제공하는 것입니다. 특히 보안 및 전자금융거래법, 개인정보보호법 등 규제 준수를 위해 카드 번호 등 민감 정보는 절대 시스템에 저장하지 않고 PG사에 위임해야 했습니다. 내수 서비스이므로 통화는 KRW(원화)로 단일화했습니다. 또한 결제는 사용자 계정...
안녕하세요 🫠 이번에는 부끄럽지만 처음으로 Spring boot 를 활용한 백엔드 개발을 무사히 마치고 작성했던 회고를 메모장에만 보관해두고 있다가 슬쩍 올려보고자 합니다 그동안 메모장에 봉인해두고 살다가 갑자기 올리는 이유는, 뭐든 초심을 지키면서 내가 처음에 의도했던 방향대로 나아가는 건 어렵기 때문입니다. 처음 개발을 시작했을 때, 잘하는 사...
안녕하세요! 😊 요즘 일상 블로그도 안쓰기도 하고 기왕이면 최대한 의미있게 쓰고 싶다는 생각에 개발 블로그 쓰기 시작하는 데에도, 완성하는 데에도 오래 걸려서 정말 오랜만에 블로그를 쓰러 앉았는데요! 이전 장애인 취업 지원 플랫폼 개발에서, 모놀리식 구조를 MSA로 변경하기로 하면서 하나의 이슈 사항 중 하나가, 호기롭게 grpc 도입을 추진했지만 ...
안녕하세요! 이번에 [2024 SKT-하나금융그룹 TECH4GOOD] 에 (강제) 참여하게 되면서 1박 2일로 짧게 개발을 진행하게 됐는데요! 비록 결과는 아쉬웠지만, 내가 짧은 시간 안에 이 정도의 아웃풋을 낼 수 있는 사람이구나를 알 게 되었고 또 기획적으로 이런 부분이 아쉬웠구나 등을 느낄 수 있어서 그럼에도 뜻 깊은 시간이었습니다 개발을 ...
안녕하세요! 그동안 개발 기술 블로그에 정착하지 못 하고 있었는데요 개발 기술 블로그를 고민하던 도중 Github Pages 를 이용한 블로그 만드는 법을 발견하고 진행하게 되었는데, 오늘은 이 경험을 토대로 Github 블로그 만드는 방법 및 Google Adsense 및 Google Analytics 연결에 대해 작성해보겠습니다. 🙇🏻♀️ G...
안녕하세요, SYF Web 팀 인턴 정다연 입니다. 🙇🏻♀️ Hello Cocone 작업 중 서버에 log 로만 error message 를 남길 뿐, Front 에 Error Message 를 정확하게 넘겨주지 않아 error 발생 시 log 를 항상 확인해야 하는 번거로움이 있어 Error Response 관련 여러 테스트를 진행하게 되었습...