Имея миллионы записей о людях в базе данных вашего сервера (надеюсь, вы придерживаетесь законов о защите данных), вам потребуется уменьшить нагрузку на вычисление всех этих расстояний; в противном случае вам необходимо выполнить расчет для каждой из этих миллионов записей.
Используйте PHP для вычисления "ограничивающего прямоугольника", который можно использовать для выбора подмножества вероятных кандидатов из ваших записей миллионов людей, а затем только для расчета расстояния для этого подмножества записей людей. См. эту статью на веб-сайте с подвижным типом, например, PHP-код, описывающий, как это сделать, и отличное описание того, как этот метод действительно работает.