初识Redis

本文详细介绍了Redis,一种基于键值对的高性能NoSQL数据库,强调其快速读写、多种数据结构、丰富功能如持久化、主从复制及高可用性解决方案,以及在缓存、排行榜、计数器、社交网络和消息队列等场景的应用。
摘要由CSDN通过智能技术生成

1.1 Redis介绍

	Redis是一种基于键值对的NoSQL数据库,Redis中的值可以是由string(字符串)、hash(哈希)、list
(列表)、set(集合)、zset(有序集合)、Bitmaps(位图)、HyperLog、GEO(地理信息定位)等多种数据
结构和算法组成。

1.2 Redis特性

1 读写速度快

  • 数据存放在内存中
  • C语言实现,执行速度相对更快
  • 单线程架构,预防了多线程可能产生的竞争问题

2 基于键值对的数据结构服务器

	基于键值对的数据结构,Redis的值不仅可以是字符串,还可以是hash(哈希)、list(列表)、set
(集合)、zset(有序集合)、Bitmaps(位图)、HyperLog、GEO(地理信息定位)等多种数据结构

3 丰富的功能

  • 键过期功能,可以用来实现缓存
  • 发布订阅功能,可以用来实现消息系统
  • Lua脚本功能,可以利用Lua创造出新的Redis命令
  • 简单的事务功能,保证事务特性
  • 提供流水线功能,客户端能将一批命令一次性传到Redis,减少网络开销

4 简单稳定

  • 代码量小
  • 单线程模型
  • 不依赖操作系统中的类库,自己实现事件处理的相关功能

5 客服端语言多

Redis提供简单的TCP通信协议,很多编程语言可以很方便地接入到Redis。

6 持久化

通常情况下,将数据放在内存中是不安全地,一旦发生断电或者机器故障,重要的数据可能就会丢失,因此Redis提供了两种持久化方式:RDB和AOF,可以用两种策略将内存地数据保存到硬盘中。

7 主从复制

Redis提供复制功能,实现多个相同数据的Redis副本,复制功能是分布式Redis的基础。

8 高可用和分布式

高可用实现Redis Sentinel,能够保证节点的故障发现和故障自动转移。
分布式实现Redis Cluster,提供高可用、读写和容量的扩展性。

1.3 Redis使用场景

 - 缓存
 	缓存机制可以加快数据的访问速度,能够降低后端数据源的压力。Redis提供了键值过期事件设置,提供了灵
 活控制最大内存和内存溢出后的淘汰策略。
 - 排行榜系统
 	Redis提供了列表和有序集合数据结构,合理地使用这些数据结构可以很方便地构建各种排行榜系统。
 - 计数器应用
 	在视频网站有播放数、电商网站有浏览数,为了保证数据的实时性,每一次播放和浏览都要做加1的操作,如果
 并发量很大对于传统关系型数据的性能是一种挑战。
 - 社交网络
 	赞/踩、粉丝,共同好友/喜好、推送、下拉刷新等是社交网站的必备功能。
 - 消息队列系统
 	Redis提供了发布订阅和阻塞队列的功能。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值