ASP.NET MVC - загрузка файла данных Maxmind - PullRequest
1 голос
/ 10 августа 2010

Я планирую использовать DAT-файл Maxmind для предоставления некоторых базовых возможностей геолокации в разрабатываемом приложении ASP.NET MVC.Файл DAT составляет приблизительно 17 МБ, и мне интересно, как лучше всего загрузить его в мое приложение - очевидно, я не хочу загружать его каждый раз, когда требуется некоторая географическая информация, и я думаю, что лучший способ -загрузить его в общую переменную при запуске приложения.

Как кто-то еще подошел к этому?Любые рекомендации?Спасибо

JP

Ответы [ 2 ]

4 голосов
/ 13 августа 2010

Кэш - это ужасное место для хранения этого.Он может быть удален без уведомления, поэтому вам придется перезагружать его всякий раз, когда он удаляется.

Maxmind предоставляет .NET API для работы со своим DAT-файлом.В пакете tar.gz (описанном как «API C # с открытым исходным кодом для GeoIP City, Country, ISP и т. Д.») Уже есть возможность эффективной загрузки данных в частный кэш, например:

var lookupService = new LookupService("path.to.my.dat", LookupService.GEOIP_MEMORY_CACHE);
2 голосов
/ 10 августа 2010

HttpRuntime.Cache кажется мне лучшим местом, где вы можете сохранить эти данные.См. здесь для получения информации о том, как добавлять и удалять содержимое из кэша.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...