Redis的基础知识点

Redis是一个开源的高性能键值数据库,提供原子性操作和多种数据结构如字符串、列表、哈希等。其特点是数据持久化、主从复制,常用于数据缓存、会话缓存、排行榜/计数器和消息队列。Redis采用单线程模型,避免了线程安全问题,但限制了在多核CPU下的性能。尽管如此,通过创建多个实例仍能实现性能提升。
摘要由CSDN通过智能技术生成

一、简介
1、Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。
2、Redis:REmote DIctionary Server(远程字典服务器), Redis是当前比较热门的NOSQL系统之一,它是一个开源的使用ANSI,c语言编写的key-value存储系统(区别于MySQL的二维表格的形式存储。)。和Memcache类似,但很大程度补偿了Memcache的不足。和Memcache一样,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。所以Memcache的应用场景适用于缓存无需持久化的数据。而Redis不同的是它会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。
3、Redis的作者Salvatore Sanfilippo(Antirez)
 

二、特点
Redis读取的速度是110000次/s,写的速度是81000次/s;原子 。Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
支持多种数据结构:string(字符串);list(列表);hash(哈希 ,映射集合),set(集合);zset(有序集合);持久化,主从复制(集群);主从复制(集群)  主是 主机,主人   从是  随从;支持过期时间,支持事务,消息订阅。官方不支持window,但是又第三方版本。消息订阅:kafka   aq   rq            过期时间:短信验证码    周期性的支持持久化
Redis支持数据的备份,即master-slave模式的数据备份。
Redis数据都是缓存在计算机内存中的; CPU是核心,运行速度快;    .net是Windows的,下载申特VS7
 

三、Redis的应用场景
1、数据缓存(提高访问性能)

为了提高用户的请求速度和降低网站的负载,降低数据库的读写次数,就把这些数据放到缓存中。

将一些数据在短时间之内不会发生变化,而且它们还要被频繁访问,

2、会话缓存  (session cache,保存web会话信息)

3、排行榜/计数器 (NGINX+lua+redis计数器进行IP自动封禁)

4、消息队列 (构建实时消息系统,聊天,群聊

四、单进程单线程
redis是单线程的;单进程不存在线程安全问题;多线程处理会涉及到线程切换而消耗CPU
缺点:无法发挥多核CPU性能,不过可以通过在单机开多个Redis实例来完善
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值