Almacena la ubicación del usuario en DB y encuentra los usuarios más cercanos para él.

Estoy intentando implementar un sistema de usuario, uno de los requisitos del sistema es encontrar otros usuarios que estén cerca de usted.

La ubicación se filtrará por países pero no por ciudades, por lo que los usuarios pueden obtener otros usuarios del mismo país pero de diferentes ciudades.

La pregunta es ¿cómo calcular distancias entre ciudades? No tiene que ser 100% preciso, sino que debe dar cierta prioridad a los usuarios más cercanos.

¿La API de ubicación de Google Geo satisfará esos requisitos? ¿Cuáles son las alternativas?

¿Alguna idea de cómo implementarlo sin un cálculo muy pesado?

Pensé en preguntar al usuario su país y ciudad solo por escribir en su perfil, y obtener su ubicación geográfica desde su IP o importar una base de datos que contenga todas las ciudades y su ubicación geográfica.

Por favor dirígeme

Respuestas a la pregunta(1)

Su respuesta a la pregunta