|NO.Z.00004|——————————|BigDataEnd|——|Hadoop&Redis.V04|——|Redis.v04|简介历史|
一、Redis数据结构及过期机制:Redis介绍
### --- 什么是Redis
~~~ Redis (Remote Dictionary Server)远程字典服务器,
~~~ 是用C语言开发的一个开源的高性能键值对( key-value )内存数据库。
~~~ 它提供了五种数据类型来存储值:字符串类型、散列类型、列表类型、集合类型、有序集合类型
~~~ 它是一种NoSQL 数据存储。
二、Redis发展历史
### --- Redis发展历史
~~~ 2008年,意大利的一家创业公司Merzia 推出了一款基于MySQL 的网站实时统计系统LLOOGG ,
~~~ 然而没过多久该公司的创始人 Salvatore Sanfilippo ( antirez)便 对MySQL的性能感到失望,
~~~ 于是他决定亲自为LLOOGG 量身定做一个数据库,并于2009年开发完成,这个数据库就是Redis。
~~~ # Redis2.6
~~~ Redis2.6在2012年正式发布,主要特性如下:
~~~ 服务端支持Lua脚本、去掉虚拟内存相关功能、键的过期时间支持毫秒、
~~~ 从节点提供只读功能、两个新的位图命令:bitcount和bitop、
~~~ 重构了大量的核心代码、优化了大量的命令。
~~~ # Redis2.8
~~~ Redis2.8在2013年11月22日正式发布,主要特性如下:
~~~ 添加部分主从复制(增量复制)的功能、可以用bind命令绑定多个IP地址、
~~~ Redis设置了明显的进程名、发布订阅添加了pubsub命令、Redis Sentinel生产可用
~~~ # Redis3.0
~~~ Redis3.0在2015年4月1日正式发布,相比于Redis2.8主要特性如下:
~~~ Redis Cluster:Redis的官方分布式实现(Ruby)、全新的对象编码结果、
~~~ lru算法大幅提升、部分命令的性能提升
~~~ # Redis3.2
~~~ Redis3.2在2016年5月6日正式发布,相比于Redis3.0主要特征如下:
~~~ 添加GEO相关功能、SDS在速度和节省空间上都做了优化、
~~~ 新的List编码类型:quicklist、从节点读取过期数据保证一致性、Lua脚本功能增强等
~~~ # Redis4.0
~~~ Redis4.0在2017年7月发布,主要特性如下:
~~~ 提供了模块系统,方便第三方开发者拓展Redis的功能、PSYNC2.0:
~~~ 优化了之前版本中,主从节点切换必然引起全量复制的问题、
~~~ 提供了新的缓存剔除算法:LFU(Last Frequently Used),
~~~ 并对已有算法进行了优化、提供了RDB-AOF混合持久化格式等
三、Redis应用场景
### --- Redis应用场景
~~~ 缓存使用,减轻DB压力
~~~ DB使用,用于临时存储数据(字典表,购买记录)
~~~ 解决分布式场景下Session分离问题(登录信息)
~~~ 任务队列(秒杀、抢红包等等) 乐观锁
~~~ 应用排行榜 zset
~~~ 签到 bitmap
~~~ 分布式锁
~~~ 冷热数据交换
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv012-redis
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通