지도 주소 검색시 Http 응답코드 429 문의드립니다

안녕하세요.
자사 Android 앱을 개발하면서 카카오 지도를 연동하여 사용하고 있습니다.

현재 앱을 마켓에서 운영중인데요. 현재 앱에는 지도가 없고 차후 업데이트에 지도가 포함되어 들어갑니다.
저희 서버 DB에 있는 주소 정보를 이용하여 지도에 마커를 찍고자 아래의 API를 사용하고 있습니다.

/v2/local/search/address.json

한번에 처리하는 데이터가 적게는 수십건에서 많게는 수백건 정도 됩니다.
위 API는 한번 요청에 한건씩만 처리가 가능한 것 같은데요.
처음에는 반복문으로 한건씩 처리를 해봤으나 데이터가 수백건일 경우 마커를 모두 찍을때까지 시간이 너무 많이 소요되는 관계로 Thread Pool을 이용하여 멀티 스레드로 처리하였습니다.
for문으로 하나씩 처리할때보다 속도는 월등히 빨라졌습니다만, 요청 데이터 건수가 많을 경우에는 중간중간에 응답코드 429 (Too Many Requests)가 내려오고 있습니다.

모든 마커가 정확히 표시되어야 하는 상황인데, 이렇게해서 빠지는 데이터가 제법 있습니다.
앱의 월/일간 사용량 쿼터를 보니 쿼터 초과 문제는 아닌 것 같습니다.
이런 경우 혹시 해결방법이 있을까요?

초당 리퀘스트 제한에 걸린겁니다.

애초에 해당 API는 대량의 batch 작업을 위해 설계되지 않았습니다.

파라메터로 제공되는 기능만 봐도 알 수 있듯,
검색 결과를 클라이언트에 표출하기 위한 API입니다.
그래서 page/size 가 있는 것이고요.

해당 API의 결과를 fork 또는 가공해서 또 다른 DB에 저장하는 식의 batch 작업과는 성격이 맞지 않고요. 한 번에 대량의 호출을 해야하는 상황 또한 문제가 됩니다.
이는 카카오 API를 사용하고 있는 다른 사용자에게 안 좋은 영향을 미칠 수 있는 사용방식이기 때문에 존재하는 제한입니다.
이 제한은 해제 불가능합니다.

초당 리퀘스트 제한과 관련된 세부사항은 공개하지 않으며
약관에 위배되지 않는다는 가정하에 말씀하신 방식 그대로 계속 사용해야 하는 경우,
호출에 직접 타임아웃을 주어 적절히 회피해서 사용하셔야 할 겁니다.

2개의 좋아요