博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
redis基本类型(1)
阅读量:4037 次
发布时间:2019-05-24

本文共 1958 字,大约阅读时间需要 6 分钟。

redis介绍

     Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster.

  、

redis基本类型

String 

      数据结构简单,key-value,value不仅仅是字符串,也可以是数字

常用的命令

 Get 获取指定 key 的值Set 设置指定 key 的值Incr 将 key 中储存的数字值增一Decr 将 key 中储存的数字值减一Mget 获取所有(一个或多个)给定 key 的值SetNX|set k v NX 只有键key不存在的时候才会设置key的值Set k v XX 只有键key存在的时候才会设置key的值

hash

    是一个string类型的filed和value的映射表

   常用命令

Hget 获取存储在哈希表中指定字段的值Hset 将哈希表 key 中的字段 field 的值设为 valueHgetall 获取在哈希表中指定 key 的所有字段和值

使用场景:用户信息,热门商品,部分变更数据

list

   链表结构

常用命令

 

Lpush 将一个或多个值插入到列表头部Rpush 在列表中添加一个或多个值Lpop 移出并获取列表的第一个元素Rpop 移除列表的最后一个元素,返回值为移除的元素Lrange 获取所有(一个或多个)给定 key 的值

使用场景:关注列表,粉丝列表

set

   集合,不重复的集合。 (并集)

常用命令

Sadd 向集合中添加一个或多个成员Spop 移除并返回集合中的一个随机元素Smembers 返回集合中的所有成员Sunion 返回所有给定集合的并集

使用场景:共同关注好友,二度好友,共同喜好

sort set

  与set的区别是不是自动有序的,sort set是自动有序的。

Zadd 向有序集合添加一个或多个成员,或者更新已存在成员的分数Zrange 通过索引区间返回有序集合中指定区间内的成员Zrem 移除有序集合中的一个或多个成员Zcard 获取有序集合的成员数

使用场景:排行榜 、按照用户投票,文章排序

Geo

    3.2版本地理位置

常用命令

GEOADD 增加地理位置的坐标,可以批量添加地理位置GEODIST 获取两个地理位置的距离GEOHASH 获取某个地理位置的geohash值GEOPOS 获取指定位置的坐标,可以批量获取多个地理位置的坐标GEORADIUS根据给定地理位置坐标获取指定范围内的地理位置集合(注意:该命令的中心点由输入的经度和纬度决定)GEORADIUSBYMEMBER根据给定成员的位置获取指定范围内的位置信息集合(注意:该命令的中心点是由给定的位置元素决定)

使用场景:LBS应用开发

Stream

     5.0版本 新的结构“流”

常用命令

XADD 往指定的流中添加消息XLEN stream流中的消息数量XDEL 删除流中的消息XRANGE 返回流中满足给定ID范围的消息XREAD 从一个或者多个流中读取消息XINFO 检索关于流和关联的消费者组的不同的信息

工作示意图

 Pub/Sub

          生产者发布消息到频道,消费者订阅频道,从频道接收消息。两者彼此相互不了解。

常用命令

PUBLISH 将信息 message 发送到指定的频道 channelPUBSUB 检测PUB/SUB子系统的状态,由描述的子命令组成SUBSCRIBE 订阅指定的频道消息UNSUBSCRIBE 退订给定的频道,若没有指定频道,则退订所有频道PSUBSCRIBE 订阅者希望订阅的模式,可以通过?、*、[]三种方式来指定PUNSUBSCRIBE 退订指定模式,若果没有提供模式则退出所有模式。

 

转载地址:http://hujdi.baihongyu.com/

你可能感兴趣的文章
Java中数字转大写货币(支持到千亿)
查看>>
Java.nio
查看>>
函数模版类模版和偏特化泛化的总结
查看>>
VMware Workstation Pro虚拟机不可用解决方法
查看>>
最简单的使用redis自带程序实现c程序远程访问redis服务
查看>>
redis学习总结-- 内部数据 字符串 链表 字典 跳跃表
查看>>
iOS 对象序列化与反序列化
查看>>
iOS 序列化与反序列化(runtime) 01
查看>>
iOS AFN 3.0版本前后区别 01
查看>>
iOS ASI和AFN有什么区别
查看>>
iOS QQ侧滑菜单(高仿)
查看>>
iOS 扫一扫功能开发
查看>>
iOS app之间的跳转以及传参数
查看>>
iOS __block和__weak的区别
查看>>
Android(三)数据存储之XML解析技术
查看>>
Spring JTA应用之JOTM配置
查看>>
spring JdbcTemplate 的若干问题
查看>>
Servlet和JSP的线程安全问题
查看>>
GBK编码下jQuery Ajax中文乱码终极暴力解决方案
查看>>
Oracle 物化视图
查看>>