Estás usando la fórmula de la ley esférica de los cosenos , no la Fórmula Haversine (que es un poco más lento).
Hacer los cálculos en MySQL probablemente será mucho más rápido, le aconsejo que lee esta pregunta Pregunté hace un tiempo, en cuanto a las optimizaciones de velocidad, definitivamente debería leer el excelente Geo Proximity Buscar con MySQL papel, preste especial atención a las páginas 8-14 y 19 .