Używasz formuły Sferyczne prawo cosinusów , a nie Formuła Haversine (co jest nieco wolniejsze).
Obliczanie w MySQL będzie prawdopodobnie znacznie szybsze, radzę przeczytaj to pytanie Zapytałem jakiś czas temu, jeśli chodzi o optymalizację prędkości, zdecydowanie powinieneś przeczytać doskonałą Geo Proximity Szukaj za pomocą MySQL papier, zwróć szczególną uwagę na strony 8-14 i 19 .