【愚公系列】2022年04月 .NET架构班 043-分布式中间件 Redis介绍
【摘要】 一、Redis简介Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis是一个内存中的键值数据库,通常称为数据结构服务器。Redis和其他键值数据库之间的主要区别之一是Redis存储和操作高级数据类型的能力。这些数据类型是大多数...
一、Redis简介
Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis是一个内存中的键值数据库,通常称为数据结构服务器。Redis和其他键值数据库之间的主要区别之一是Redis存储和操作高级数据类型的能力。这些数据类型是大多数开发人员熟悉的基本数据结构(列表,映射,集合和排序集)。Redis的卓越性能,简单性和数据结构的原子操作有助于解决使用传统关系数据库实现时难以实现或执行不佳的问题。
Redis 官网:https://redis.io/
源码地址:https://github.com/redis/redis
Redis 在线测试:http://try.redis.io/
Redis 命令参考:http://doc.redisfans.com/
二、Redis特点
Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。
Redis 与其他 key - value 缓存产品有以下三个特点:
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
Redis 优势
优势 | 说明 |
---|---|
丰富的数据类型 | 为值提供五种可能的数据类型:字符串,列表,集合,哈希和有序集合。提供了这些数据类型独有的操作,并且具有记录良好的时间复杂度(Big O表示法)。 |
性能极高 | 由于其内存特性,项目维护者将复杂性保持在最低限度的承诺以及基于事件的编程模型,Redis 在读写操作方面具有出色的性能,Redis能读的速度是110000次/s,写的速度是81000次/s 。 |
没有依赖关系的轻量级 | 用ANSIC编写,没有外部依赖关系。适用于所有POSIX环境。Windows不受官方支持,但Microsoft提供了实验性版本。 |
高可用性 | 内置支持异步,非阻塞,主/从复制,以确保数据的高可用性。目前有一种名为Redis Sentinel的高可用性解决方案目前可以使用,但仍被视为正在进行的工作。 |
三、Redis功能
以下是一些最重要的Redis功能:
- 内存缓存: 由于其高性能,当读写操作量超过传统数据库的功能时,Redis能够轻松地将数据持久保存到磁盘。
- 支持发布/订阅:Redis提供了使用发布/订阅消息传递范例分发数据的功能。
- 自动重新连接支持
- Lua脚本
- 钥匙的生存时间有限
- LRU逐出钥匙
- 自动故障转移
- 内置复制
- 数据结构支持字符串,散列,列表,集合,有序集,位图,超级日志,地理空间索引
Redis支持数据结构,可以存储字符串,列表,集合,哈希。它提供了有趣的功能,如内置复制,LRU驱逐,事务,磁盘持久性和高可用性。它在群集环境中提供自动故障转移;它可以与大多数语言一起使用。
四、Redis的使用场景
Redis是分布式缓存,主要是为了提升系统查询性能,Redis主要用在集群系统中。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)