什么是Redis他能干什么

Redis介绍

       Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

Redis官方网站

redis英文官网地址:
https://redis.io/
中文网站
http://www.redis.cn/

Nosql的适用场景(及举例)

  • 对数据高并发的读写
  • 对数据高可扩展性的
  • 速度够快,能够快速的存取数据

1.取最新N个数据的操作

例如典型的取网站的最新文章、某一电商的最新订单。

2.排行榜应用,取TOP N操作

经过排序后的前N想。例如评论最多的前10篇文章、订单金额最多的前15名订单。

3.需要精准设定过期时间的场景

微信撤回功能,两分钟内可以撤回,两分钟后过期无法撤回。微信红包24小时未领取即过期。

4.计数器应用

Redis的命令都是原子性的,可以轻松地利用INCR,DECR命令来构建计用于计数的数器系统。

5.Uniq操作,获取某段时间所有数据排重值

适用于对某段时间内所有数据进行去重。例如计算网站的UV数量。

6.Pub/Sub构建实时消息系统

Redis的Pub/Sub系统可以构建实时的消息系统,比如很多用Pub/Sub构建的实时聊天系统的例子。

8.缓存

       缓存最新的、最热的、用户最常用的数据。

9.构建队列系统

 Nosql不适合的场景

  • 需要事务支持
  • 基于sql的结构化查询存储,处理复杂的关系,需要即席查询(用户自定义查询条件的查询)。

Nosql举例

Memcache:目前常被使用,不只是数据持久化
Redis: 覆盖Memcache功能,支持数据持久化
MongoDB:对value(尤其是json)提供了丰富的查询功能,二进制数据及大型对象可以根据数据的特点替代RDBMS(关系数据库管理系统)
Hase:海量数据、精确查找、快速返回 
Redis特点:
高效性:Redis读取的速度是110000次/s,写的速度是81000次/s
原子性:Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
支持多种数据结构:string(字符串);list(列表);hash(哈希),set(集合);zset(有序集合)
稳定性:持久化,主从复制(集群)
其他特性:支持过期时间,消息订阅。

Redis的安装

Redis的详情安装

发布了52 篇原创文章 · 获赞 62 · 访问量 21万+

猜你喜欢

转载自blog.csdn.net/qq_43791724/article/details/104821554