krislinzhao / StudyNotes

📚JAVA、Spring、SpringMVC、SpringBoot、Mybatis、Vue、MySQL、MongoDB、Radis、Docker、Nginx、......笔记
Apache License 2.0
810 stars 372 forks source link

redis经纬度数据操作,支持按照距离远近排序吗? #3

Closed feng99 closed 4 years ago

feng99 commented 4 years ago

比如,我周围3公里有20个商家,按照由近到远排序。

feng99 commented 4 years ago

找到了,有个排序的条件 建议在文档里补充下,因为这个比较贴合业务场景。

krislinzhao commented 4 years ago

通过 georadius的参数asc由近及远的排序,已在08.经纬度数据操作这节添加了详细的参数说明。

feng99 commented 4 years ago

通过 georadius的参数asc由近及远的排序,已在08.经纬度数据操作这节添加了详细的参数说明。

经过实际的业务考虑,我最终选择用mongoDB来实现这个功能, 因为redis虽然能实现具体范围查找和排序
但是无法增加其他条件 比如只看附近3公里 参加618活动的商家 并按照距离由近及远排序. 甚至是单页面数据 多个查询条件 多个排序条件 混合使用的 比如 按照价格排序 然后可以切换为按照距离排序
redis除了地理位置 再扩展一点的都不支持了. 单独维护一份地理位置数据 又不值得 因为只要有数据拷贝,就有数据不一致问题. 感谢老铁回复问题.