서버 아이피 쓰로틀링 관련 문의

로컬이나 프로덕션 서버에서는 해당 문제가 없는데, 유독 개발용 스테이징 서버에서만 토스에 보낸 요청이 한번에 하나씩만 처리되고 그마저도 3-4초 정도 걸리면서 응답지연이 발생하고 있고, 그래서 api gateway 의 30초 타임아웃에 걸리고 맙니다. 혹시 쓰로틀링 처리되고 있는지 아닌지 확인할 수 있는 방법이 있을까요?
27 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
jjpark78_superman
jjpark78_supermanOP6mo ago
44.207.76.251 54.234.215.120 두개의 아이피입니다.
OMG
OMG6mo ago
안녕하세요. 저희쪽에서 우선 응답 지연이었는지 부터 확인해보고자 하는데요. 위에 타임아웃 발생한 거래건 샘플 주문번호 몇개만 알려주실 수 있으실까요?
jjpark78_superman
jjpark78_supermanOP6mo ago
harrie-paymentkey-1725357363 harrie-paymentkey-1725351255
OMG
OMG6mo ago
위 2건으로 먼저 응답시간 체크해보겠습니다
jjpark78_superman
jjpark78_supermanOP6mo ago
요거 두개는 0원 결제라서 아마 토스에 결제정보가 생성되어 있지는 않은데요, 404 에러만 시간이 걸리는 거라면 저희측에서 스테이징 서버가 결제 테스트할때 0원으로 만들지 않도록 하면 되기는 하는데 그냥 확인 차원에서 드리는 문의입니다.
OMG
OMG6mo ago
그런데 저희쪽으로 계속 결제조회 API 를 반복적으로 호출하고 계신것 같은데 의도적이신걸까요? 5분 간격으록 계속 호출되고 있습니다
jjpark78_superman
jjpark78_supermanOP6mo ago
네. CS에서 부분 취소를 시킬경우 별도의 웹훅으로 이벤트를 받을 수 있는 방법이 없어서 일정 간격마다 최근에 업데이트된 트랜잭션에서 부분취소를 확인하고 있습니다.
OMG
OMG6mo ago
그 부분이라면 웹훅에서 PAYMENT_STATUS_CHANGED 이벤트 등록하셔서 콜백 응답을 수신하시면 됩니다. https://docs.tosspayments.com/guides/webhook#웹훅webhook-연결하기
웹훅(Webhook) 연결하기 | 토스페이먼츠 개발자센터
토스페이먼츠 결제, 브랜드페이, 지급대행 상태에 변경사항이 있을 때 웹훅으로 실시간 업데이트를 받아보세요. 웹훅이란 데이터가 변경되었을 때 실시간으로 알림을 받을 수 있는 기능이에요.
OMG
OMG6mo ago
그리고 위 2건 중 첫번째 주문번호 의 결제조회 API 호출 시작시간이 9/3 19:01 부터였는데요.
jjpark78_superman
jjpark78_supermanOP6mo ago
오.. 이게 예전부터 있던거였나요 ?
OMG
OMG6mo ago
네 그렇습니다.
jjpark78_superman
jjpark78_supermanOP6mo ago
저는 왜 처음보는거 같죠 ㅎ
OMG
OMG6mo ago
네 저 웹훅을 이용해주시면 됩니다.
jjpark78_superman
jjpark78_supermanOP6mo ago
그건 그렇고 404 에러가 발생할 경우 3-4초가 걸리는지만 확인하면 되는데요
OMG
OMG6mo ago
다시 돌아가서 타임아웃이 발생하는 케이스가 어떤 엔드포인트에서 발생하시나요?
jjpark78_superman
jjpark78_supermanOP6mo ago
const tossApiQueryPayment = {
method: 'GET',
url: `https://api.tosspayments.com/v1/payments/${paymentKey}`,
headers: {
Authorization: `Basic ${base64Key}`,
'Content-Type': 'application/json',
},
}
const tossApiQueryPayment = {
method: 'GET',
url: `https://api.tosspayments.com/v1/payments/${paymentKey}`,
headers: {
Authorization: `Basic ${base64Key}`,
'Content-Type': 'application/json',
},
}
여기요
OMG
OMG6mo ago
harrie-paymentkey-1725357363 기준으로 말씀드리면, 어제 19:01 이후 부터 총 261 회 요청이 있었습니다. 위 거래건 기준으로 저희쪽 응답시간은 1ms~130ms 걸렸고, 100ms 이상 소요된 건도 4건밖에 되지 않습니다. 말씀하신 부분은 저희쪽 응답 지연은 아닌 것으로 보입니다. 결제, 취소, 조회 등 API 응답이 지연될 경우 관제팀에서 모니터링 하고 있고, 저희 팀 내부에서도 2, 3초 이상건 지연이 많이 발생하게 되는 경우를 모니터링하고 있습니다. 해당 부분은 실질적으로 저희쪽 이슈로 보이지는 않네요. 위에 앞서 설명 드렸던 웹훅으로 원하시는 부분이 해소될 수 있을 것으로 보여지는데요. 웹훅으로 처리해주시면 귀사에서도 저희쪽에서도 좋은 방법으로 해결할 수 있을 것 같습니다!
jjpark78_superman
jjpark78_supermanOP6mo ago
어 혹시 다른 키로 확인도 가능할까요 ?
OMG
OMG6mo ago
다른 주문번호를 말씀하시는걸까요? 테스트 환경은 라이브 환경에 비해 성능이 약간 떨어질 수 도 있지만, 여러 가맹점이 테스트를 수행하고 있기 때문에 이정도 요청으로 성능의 부하가 갈 정도는 아니라서요..
jjpark78_superman
jjpark78_supermanOP6mo ago
네 알겠습니다. jaeger 트레이싱 정보를 구해서 다시 들고 오겠습니다. 잠시만요
2024-09-04T00:43:16.187Z begin getTossPayment 333: harrie-paymentkey-1725357363
2024-09-04T00:43:16.185Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.183Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.181Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.179Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.178Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.176Z begin getTossPayment 333: harrie-paymentkey-1720407790
2024-09-04T00:43:16.173Z begin getTossPayment 333: harrie-paymentkey-1720083022
2024-09-04T00:43:16.172Z begin getTossPayment 333: harrie-paymentkey-1720079250
2024-09-04T00:43:16.169Z begin getTossPayment 333: harrie-paymentkey-1720079146
2024-09-04T00:43:16.157Z begin getTossPayment 333: harrie-paymentkey-1720078437
2024-09-04T00:43:16.153Z begin getTossPayment 333: harrie-paymentkey-1716273372
2024-09-04T00:43:16.140Z begin getTossPayment 333: harrie-paymentkey-1715850489
2024-09-04T00:43:16.187Z begin getTossPayment 333: harrie-paymentkey-1725357363
2024-09-04T00:43:16.185Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.183Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.181Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.179Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.178Z begin getTossPayment 333: harrie-paymentkey-1725332287
2024-09-04T00:43:16.176Z begin getTossPayment 333: harrie-paymentkey-1720407790
2024-09-04T00:43:16.173Z begin getTossPayment 333: harrie-paymentkey-1720083022
2024-09-04T00:43:16.172Z begin getTossPayment 333: harrie-paymentkey-1720079250
2024-09-04T00:43:16.169Z begin getTossPayment 333: harrie-paymentkey-1720079146
2024-09-04T00:43:16.157Z begin getTossPayment 333: harrie-paymentkey-1720078437
2024-09-04T00:43:16.153Z begin getTossPayment 333: harrie-paymentkey-1716273372
2024-09-04T00:43:16.140Z begin getTossPayment 333: harrie-paymentkey-1715850489
이렇게 동시에 요청을 보내고 있는데요
2024-09-04T00:44:02.503Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:58.684Z get response from toss: harrie-paymentkey-1720079250
2024-09-04T00:43:55.163Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:51.914Z get response from toss: harrie-paymentkey-1720078437
2024-09-04T00:43:48.715Z get response from toss: harrie-paymentkey-1725357363
2024-09-04T00:43:46.040Z get response from toss: harrie-paymentkey-1716273372
2024-09-04T00:43:42.448Z get response from toss: harrie-paymentkey-1720083022
2024-09-04T00:43:38.887Z get response from toss: harrie-paymentkey-1720407790
2024-09-04T00:43:34.960Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:30.816Z get response from toss: harrie-paymentkey-1715850489
2024-09-04T00:43:27.820Z get response from toss: harrie-paymentkey-1720079146
2024-09-04T00:43:23.857Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:20.368Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:44:02.503Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:58.684Z get response from toss: harrie-paymentkey-1720079250
2024-09-04T00:43:55.163Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:51.914Z get response from toss: harrie-paymentkey-1720078437
2024-09-04T00:43:48.715Z get response from toss: harrie-paymentkey-1725357363
2024-09-04T00:43:46.040Z get response from toss: harrie-paymentkey-1716273372
2024-09-04T00:43:42.448Z get response from toss: harrie-paymentkey-1720083022
2024-09-04T00:43:38.887Z get response from toss: harrie-paymentkey-1720407790
2024-09-04T00:43:34.960Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:30.816Z get response from toss: harrie-paymentkey-1715850489
2024-09-04T00:43:27.820Z get response from toss: harrie-paymentkey-1720079146
2024-09-04T00:43:23.857Z get response from toss: harrie-paymentkey-1725332287
2024-09-04T00:43:20.368Z get response from toss: harrie-paymentkey-1725332287
응답은 이렇게 순차적으로 3-4초씩 딜레이되서 404 에러가 오거든요
OMG
OMG6mo ago
우선 404 에러는 존재하지 않는 결제건으로 조회를 하셔서 계속 받고 계신것이고, 위에 주신 건들도 해당 시간대에 전부 요청 받은 즉시 20ms 안쪽으로 모두 응답했습니다.
jjpark78_superman
jjpark78_supermanOP6mo ago
👀 네 확인해주셔서 감사합니다.
OMG
OMG6mo ago
1, 2건 주문번호로 테스트로 반복 호출하는 것으로 알고 말씀드렸는데, 지금보니 상당수 건수들을 반복 요청 주시고 있는데요.
jjpark78_superman
jjpark78_supermanOP6mo ago
웹훅의 존재를 모르고 있어서 발생한 문제인데, 아마 조만간 바뀔겁니다.
OMG
OMG6mo ago
네 변경해주시면 좋을 것 같습니다. 감사합니다.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?