IP 주소를 기반으로 국가 코드를 가져와야하는 시스템에서 작업 중이며 여러 서버에서 모든 모양과 크기의 여러 응용 프로그램에 액세스 할 수 있어야합니다.Curl 대 원격 데이터베이스 대 로컬 파일?
현재로서는 MaxMind에서 다운로드 한 .dat 파일에서 국가 코드를 확인하는 기존 geo.php 라이브러리에 대한 cURL 요청을 통해 얻은 것입니다. 분명히이 방법은 메모리 누수로 인해로드가 많은 상황에서 문제가 발생 했습니까? 아무도 확실하지 않습니다.
우리는 cURL을 사용하지 말고 로컬 파일에 저장된 데이터를 사용하여 로컬 기반 지오 코딩 라이브러리에서 countrycode를 파생시킬 것을 제안했습니다. 또는 아마존 (예 : Amazon S3)에서 호스팅되는 마스터 파일 일 수 있습니다. 물론 IP-to-country 조회 파일이 불필요하게 수백 개의 다른 장소에 저장되는 것에 조심스럽게 생각합니다.
내가해온 한 가지는 mysql 데이터베이스에 데이터를 저장하고 연결하여 필요한 결과를 얻은 것입니다. 확실하지는 않지만 내 사이트는 일반적으로 중앙 집중식 mysql 데이터에 연결하는 동안 신속하고 효율적으로 실행되므로이 특정 문제를 해결할 수있는 좋은 방법이 아닌 것 같습니다.
내 질문 : 다른 방식으로 데이터를 가져 오는 상대적인 오버 헤드는 무엇입니까? 그것을 cURLing하고, 원격 데이터베이스에 요청하고, 로컬 파일에서 가져오고, 다른 곳에서 호스팅되는 파일에서 가져 오는 것입니까? 이들 중 어느 것이 더 효율적인지 또는 비효율적인지 그리고 효율성의 상대적 이득이 문제를 일으키기에 충분한 지 여부를 알아내는 것은 어렵습니다 ...
음, 음, 현재 우리는 MaxMind 데이터를 가져 와서 조직 내의 어딘가에 저장하고 있습니다. 우리가 그것을 한 곳에서 유지할 수 있다면 수동으로 만 업데이트하는 것이 상대적으로 쉽습니다. 그것을 사용하고자하는 모든 장소로 전파되어야한다면 최신 정보를 유지하기가 매우 어렵습니다. 우리는 MaxMind의 서비스 및 응답 시간에 의존하고 싶지 않습니다. 의심의 여지가 없지만 좋은 것 같습니다. 그래서 여러 개의 서로 다른 사이트가 동일한 IP 암호 해독 코드와 데이터를 사용하는 최선의 방법을 찾고 있습니다 ... – thesunneversets