Допустим, у вашего сайта 200 000 уникальных пользователей в день. Итак, ваш сервер сильно загружен / загнан; и у вас нет ресурсов для покупки большего / лучшего сервера. Итак, вы застряли с тем, что у вас есть.
Теперь, когда пользователь заходит на ваш сайт, вам необходимо выполнить некоторые вычисления (вычислить расстояние между городом пользователя, обнаруженным с помощью GeoIP, и некоторым белым списком городов, определить ближайший город в радиусе 140 миль).
Вы бы сделали этот расчет через PHP или через JavaScript?
Сначала , не могли бы вы пересчитать все близлежащие города в радиусе 140 миль от городов, включенных в белый список? Например: белый список 1 может иметь 20 близлежащих городов. Или вы будете делать расчеты на лету каждый раз?
Например:
Белый список = Детройт, Мичиган
и близлежащий город = Каламазу, Мичиган (140 миль)
Второй , если предварительно вычислить: вы бы сохранили это в файле XML или в какой-нибудь таблице MySQL ? Теперь нам нужно просто выполнить поиск в таблице (размер mysql или xml не более 1 мегабайта). Я предполагаю, что это будет неэффективно, потому что клиентский браузер (JavaScript) должен будет загрузить 1mb xml и выполнить поиск по нему. Это сделает загрузку страницы еще медленнее. Использование БД может быть быстрее, но тогда увеличивается нагрузка на БД (если 200 000 уникальных пользователей пытаются загрузить страницу в течение дня).
Возможно, лучший способ сделать это - предварительно вычислить , сохранить предварительно вычисленные результаты в XML , а затем использовать PHP для поиска в XML и поиска ближайших белый город для пользователя?