Redis(九):Redis特殊类型之geospatial

朋友的定位,附近的人,位置共享,打车距离
redis在3.2就已经推出了geospatial!两地之间的距离,方圆几里的人!都可以用它实现
这个需要把你所在地的经纬度输进去,我们可以在http://www.jsons.cn/lngcode/进行查询!

1、geospatial的六个命令

1.1、GEOADD

127.0.0.1:6379> geoadd china:city 39.90 116.40 beijing	//添加地理位置(北京)
(integer) 1
127.0.0.1:6379> geoadd china:city 31.23 1216.47 shanghai
(error) ERR invalid longitude,latitude pair 1216.470000,31.230000
127.0.0.1:6379> geoadd china:city 31.23 121.47 shanghai
(integer) 1
127.0.0.1:6379> geoadd china:city 106.50 29.53 chongqing
(integer) 1
127.0.0.1:6379> geoadd china:city 22.52 114.05 shenzhen 18.24 109.50 sanya
(integer) 2

参数 key 纬度 经度 名称 ;有效的经度纬度
ps:两极无法添加

1.2、GROPOS

127.0.0.1:6379> GEOPOS china:city beijing	//获取指定的经纬度
1) 1) "116.39999896287918091"2) "39.90000009167092543"
127.0.0.1:6379> GEOPOS china:city shanghai
1) 1) "121.47000163793563843"2) "31.22999903975783553"

获得当前定位(坐标值)

1.3、DEODIST

127.0.0.1:6379> GEODIST china:city beijing shanghai	//两地(北京上海)的直线距离(默认单位是m)
"1067378.7564"
127.0.0.1:6379> GEODIST china:city beijing shanghai km
"1067.3788"

1.4、GEOEADIUS

127.0.0.1:6379> GEORADIUS china:city 110 30 1000 km	//一一个点为中心查找半径范围内的城市
1) "chongqing"
2) "shenzhen"
127.0.0.1:6379> GEORADIUS china:city 110 30 1000 km withdist	//显示距离
1) 1) "chongqing"2) "341.9374"
2) 1) "shenzhen"2) "924.6408"
127.0.0.1:6379> GEORADIUS china:city 110 30 1000 km withcoord	//显示目标的位置
1) 1) "chongqing"2) 1) "106.49999767541885376"2) "29.52999957900659211"
2) 1) "shenzhen"2) 1) "114.04999762773513794"2) "22.5200000879503861"
127.0.0.1:6379> GEORADIUS china:city 110 30 1000 km withcoord count 1	//筛选指定结果
1) 1) "chongqing"2) 1) "106.49999767541885376"2) "29.52999957900659211"

附近的人,通过半径来查询

1.5、GEORADIUSBYMEMBER

127.0.0.1:6379> GEORADIUSBYMEMBER china:city beijing 2000 km	//找出指定位置周围的
1) "chongqing"
2) "shenzhen"
3) "shanghai"
4) "beijing"

更接近于附近的人的功能!

1.6、GEOHASH

127.0.0.1:6379> GEOHASH china:city beijing chongqing	//把经纬度转换为字符串,字符串越长越精确
1) "wx4fbxxfke0"	//返回当前经纬度的字符串	
2) "wm5xzrybty0"

1.7、查看和删除

127.0.0.1:6379> ZRANGE china:city 0 -1	//查询地图中全部元素
1) "sanya"
2) "chongqing"
3) "shenzhen"
4) "shanghai"
5) "beijing"
127.0.0.1:6379> ZREM china:city chongqing	//删除
(integer) 1
127.0.0.1:6379> ZRANGE china:city 0 -1
1) "sanya"
2) "shenzhen"
3) "shanghai"
4) "beijing"

2、总结

有效的经度从-180度到180度。
有效的纬度从-85.05112878度到85.05112878度。

指定单位的参数 unit 必须是以下单位的其中一个:

m 表示单位为米。
km 表示单位为千米。
mi 表示单位为英里。
ft 表示单位为英尺。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/535885.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

九个案例简述Web设计原则:简洁清晰

作者 | 百度搜索用户体验中心 《Web设计指南》分为设计原则、基础规范两方面主要内容,同时会提供相应的实际案例及资源下载。欢迎关注OpenWeb开发者,订阅《Web设计指南》。 前言 《Web设计指南》是专门为广大Web内容生态提供一套简单实用的设计指南&a…

Redis(十):Redis特殊类型之Hyperloglog基数统计

redis 2.8.9版本就更新了Hyperloglog数据结构! Hyperloglog:基数统计算法!0.81%的错误率,不过统计大量数据可以忽略! 在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 …

W3C近期要闻:与Mozilla MDN合作联合开发Web平台文档

作者 | W3C中国 「OpenWeb开发者」依托于BOW(Brillant Open Web)团队,是一个专门的 Web 技术建设小组,致力于推动 Open Web 技术的发展,将不定期为读者同步W3C要闻。 注:由于微信不支持外链,了解…

Redis(十一):Redis特殊类型之Bitmap位图

1、位存储 只有0和1两种状态! Bitmap 位图:数据结构,都是操作二进制位来进行记录 登录/未登录 活跃/不活跃 打卡 两个状态的都可以使用Bitmap! 2、常用命令 2.1、用Bitmap来记录 周一到周日的登陆情况 127.0.0.1:6379> …

移动Web加速技术月报第2期

作者 | Brilliant Open Web 团队breezet、shdong 编辑 | 尾尾 为推进Web技术的发展,Brilliant Open Web团队特推出每月一期的《移动Web加速技术月报》,该月报将整理较流行的移动Web加速技术,并跟进各项技术的进展和发展方向,以期…

Redis(十二):Redis事务的基本操作

1、Redis事务概念 Redis 事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令序列中。 总结说&…

大型网站HTTPS 实践(一)| HTTPS 协议和原理

作者 | 百度HTTPS技术支持团队 百度已经上线了全站 HTTPS 的安全搜索,默认会将 HTTP 请求跳转成 HTTPS。本文就着重介绍了 HTTPS 协议涉及到的重要知识点和平时不太容易理解的盲区,希望能对大家理解 HTTPS 协议有帮助。百度 HTTPS 性能优化涉及到大量内容…

MongoDB(一):简介

1、MongoDB概述 MongoDB 是由C语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一款流行的开源文档型…

大型网站HTTPS实践:HTTPS对性能的影响

作者 | 百度HTTPS技术支持团队 百度已经上线了全站 HTTPS 的安全搜索,默认会将 HTTP 请求跳转成 HTTPS。百度 HTTPS性能优化涉及到大量内容,从前端页面、后端架构、协议特性、加密算法、流量调度、架构和运维、安全等方面都做了大量工作。本系列的文章将…

Redis(十三):Redis实现乐观锁

1、悲观锁与乐观锁 乐观锁和悲观锁是一种程序设计思想,而不是具体的代码。乐观锁和悲观锁应用的场景有很多,在数据库和多线程等等都会用到。 悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次…

PWA将带来新一轮大前端技术洗牌?

作者 | 彭星 编辑 | 尾尾 一、回顾历史:移动时代之初,Web遭遇两大枷锁 Web 在移动时代遭遇两大枷锁1.Web 在移动时代遭遇两大枷锁 当 Web 自信满满,步入移动时代之时,它还没有做好充足的准备。 回顾 2014 到 2015 年那段时间…

Redis(十四):Jedis

Jedis是Redis官方推荐的Java连接开发工具。要在Java开发中使用好Redis中间件&#xff0c;必须对Jedis熟悉才能写成漂亮的代码&#xff01; 1、新建Maven工程&#xff0c;导入对应依赖 <dependencies><dependency><groupId>redis.clients</groupId>&l…

高级精致智能快捷的Web设计原则案例

作者 | 百度搜索用户体验中心 《Web设计指南》分为设计原则、基础规范两方面主要内容&#xff0c;同时会提供相应的实际案例及资源下载。关注OpenWeb开发者&#xff0c;回复“设计指南”&#xff0c;即可获取已发布资源。 设计原则之高级精致 简洁并不等于粗糙没有细节&#x…

Linux系列(一):简介与目录结构

1、Linux简介 1.1、起源 Linux出现于1991年&#xff0c;是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成 1.2、Linux特点 多用户&#xff0c;多任务&#xff0c;丰富的网络功能&#xff0c;可靠的系统安全&#xff0c;良好的可移植性&#xff0c;…

日常问题——解决mac下 ssh: connect to host localhost port 22: Connection refused

问题描述&#xff1a; 今天使用ssh 登陆本地时即使用ssh localhost出现了 ssh: connect to host localhost port 22: Connection refused 错误&#xff01; 然后在网上看了很多的解决方案&#xff0c;也都是千篇一律&#xff0c;大多数是针对ssh安没安装的&#xff1f;那肯定是…

大型网站的HTTPS实践:基于协议和配置的优化

作者 | 百度HTTPS技术支持团队 百度已经上线了全站 HTTPS 的安全搜索&#xff0c;默认会将 HTTP 请求跳转成 HTTPS。百度 HTTPS性能优化涉及到大量内容&#xff0c;在前端页面、后端架构、协议特性、加密算法、流量调度、架构和运维、安全等方面都做了大量工作。本系列的文章将…

初识Hadoop:大数据与Hadoop概述

1、大数据概述 大数据&#xff08;big data&#xff09;&#xff0c;IT行业术语&#xff0c;是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信…

W3C近期要闻:W3C战略重点报告新版发布

作者 | W3C中国 「OpenWeb开发者」依托于BOW&#xff08;Brillant Open Web&#xff09;团队&#xff0c;是一个专门的 Web 技术建设小组&#xff0c;致力于推动 OpenWeb 技术的发展&#xff0c;将不定期为读者同步W3C要闻。 注&#xff1a;由于微信不支持外链&#xff0c;了解…

Hadoop的安装及配置

PS:最新安装教程请参考Hadoop的安装与配置&#xff08;设置单节点群集&#xff09;详细教程 1、Hadoop安装前准备工作&#xff1a; 在开始Hadoop安装与配置之前&#xff0c;需要准备的环境&#xff1a;Linux系统、配置JDK环境变量。 2、安装 我们可以到Apache Hadoop的官网ht…

在 PWA 中使用 App Shell 模型提升性能和用户感知体验

作者&#xff5c;潘宇琪 编辑&#xff5c;Daisy 在构建 PWA 应用时&#xff0c;使用 App Shell 模型能够在视觉和首屏加载速度方面带来用户体验的提升。另外&#xff0c;在配合 Service Worker 离线缓存之后&#xff0c;用户在后续访问中将得到快速可靠的浏览体验。 在实践过…