
지도 서비스(Reverse Geocoding)내재화 이야기
두줄요약
외부 API에 의존하던 Reverse Geocoding 기능을 내재화해 비용과 장애 리스크를 줄였습니다. 데이터 선택, GeoHash, Point In Polygon을 거쳐 성능과 운영 효율을 함께 개선했습니다.
문제 상황
- Reverse Geocoding 기능이 외부 API에 의존해 일 최대 N백만원 비용 발생
- 호출량 초과 시 서비스 중단 리스크 존재
- 자체 내재화 필요성에서 프로젝트 시작
원인 분석
- 외부 API 의존 구조로 인한 비용 부담과 안정성 한계
- 정확한 위치-주소 매핑을 위해 신뢰할 수 있는 행정구역 데이터 필요
- 대량 좌표 처리에서 저장량과 탐색 효율이 핵심 과제
해결 방법
- 통계지리정보서비스 데이터를 기반으로 행정동 데이터 선택
- Elasticsearch로 초기 검증 후 GeoHash, Point In Polygon 방식으로 단계적 개선
- 권역 분할과 바운딩 박스 적용으로 탐색 범위 축소
성능/운영 포인트
- Point In Polygon 적용 후 초당 3,100건 처리, 부하 테스트 최대 13,000 TPS
- 메모리 사용량 2GB로 감소, 평균 응답 시간 1ms 이하 달성
- 외부 API 대비 연간 98% 비용 절감 효과



