文章目录

  • Redis 简介和应用场景
  • 什么是Redis
  • 为什么要用Redis
  • Redis应用场景


Redis 简介和应用场景

什么是Redis

Redis全称Remote Dictionary Server(远程数据服务),是一个NOSQL数据库,基于内存的分布式Key-Value存储系统。
Redis的并发数取决于网络带宽,读取速度可高达110000次/s,写速度高达81000次。
Redis支持的数据类型有9种。Binary-safe strings(二进制安全字符串)、Lists(列表)、Sets(集合)、Sorted sets(有序集合)、Hashes(哈希)、Bit arrays (or simply bitmaps)(位图)、HyperLogLogs、geospatial、Streams。
Redis支持持久化,存储分为内存存储、磁盘存储和log文件三部分,重启后,Redis可以从磁盘重新将数据加载到内存中。
Redis支持主从模式、高可用,可以配置集群,这样更利于支撑起大型的项目。
Redis客户端使用RESP(Redis的序列化协议)协议与Redis的服务器端进行通信。

为什么要用Redis

为社么要使用Redis,主要从性能和并发考虑。在性能上,一些修改不频繁的数据,比如配置信息、维度数据等,将这些数据放入缓存,降低数据库压力,提高响应速度。在并发上,比如MySql的并发通常在每秒500-700之间(与服务器配置相关),在高并发场景下(比如,店商),直接频繁访问数据库,会导致数据库异常。因此,通过Redis作为缓冲,让请求先访问到redis,而不是直接访问数据库。
总之,Redis是关系型数据库的补充,减少数据库读写并发压力。

Redis应用场景

通常Redis的应用场景如下:
1.利用Redis的SortSet数据结构实现排行榜功能。
2.利用Redis中原子性的自增操作,我们可以统计类似用户点赞数、用户访问数等
3.利用集合的一些命令,比如求交集、并集、差集等。
4.利用List来实现一个队列机制,比如:到货通知、邮件发送之类的需求。
5.采用Redis保存Session,无论用户落在那台机器上都能够获取到对应的Session信息。