Redis是Remote Dictionary Server的缩写,可以翻译成远程字典服务。Redis是用C语言编写的开源项目。

Redis 最主要的特点就是高性能,对于简单的键值读取速度可以达到100000次/s,在理想情况下简单的键值写入速度可以达到80000次/s。基于此特性Redis主要用来做缓存系统或者内存数据存储。

Redis支持丰富的数据类型,包括字符串(String)、哈希(Hash)、列表(List)、集合(Set)、有序集合(Sorted Set)、流(Stream)、位图(Bitmap)、位域(Bitfield)以及地理空间索引(GeoSpatial)等。如此丰富的数据类型可以灵活应用于各种场景,并且取得高效的数据存取和操作效率。

Redis还有许多高级特性:

① 发布/订阅(Pub/Sub):支持发布/订阅模式,允许客户端订阅频道并接收消息,用于实现实时消息推送和广播。

② 事务:支持 MULTI、EXEC、WATCH 和 DISCARD 命令,允许一组命令作为一个事务执行,确保原子性。

③ 持久化、

a) RDB(Redis Database Backup):周期性地将数据库快照保存到磁盘,用于数据恢复。

b) AOF(Append-Only File):记录每个写操作到日志文件,提供更高的数据恢复精度。

c) 混合持久化:结合 RDB 和 AOF 的优点,提供更高效的持久化方案。

④ 集群

a) 主从模式:主节点负责写操作,从节点负责读取操作,实现读写分离和基本的故障恢复。

b) 哨兵模式:用于提供高可用性和自动故障转移,监控主节点和从节点的状态,当主节点故障时自动切换到从节点成为新的主节点。

c) 分片模式:通过数据分片将数据分布在多个节点上,提高性能和可扩展性,每个节点存储一个分区数据,达到支持大规模的数据处理

⑤ Lua 脚本:允许使用 Lua 脚本在 Redis 服务器端执行原子操作,减少了客户端和服务器之间的往返次数。

⑥ 内存管理:支持多种内存管理策略,如 LRU(Least Recently Used) 和 LFU(Least Frequently Used),用于控制内存使用和数据淘汰策略

⑦ 模块支持:允许通过 Redis Modules 扩展 Redis 的功能,引入新的数据类型和命令,满足特定应用需求

这些高级特性可以支持更复杂的业务需求,满足更高的定制化需求。

后面我们将继续从以下5个方面继续学习:

① 安装:包括Windows、Linux以及Docker三种环境详细安装过程。

② 客户端工具:选择一款客户端工具。

③ 基础指令学习:学习一些常用指令。

④ C#/.NET实战:选择一款C#/.NET客户端库进行编码实战。

⑤ C#/.NET封装:对客户端库进行二次封装,方便后期使用。

注:测试方法代码以及示例源码都已经上传至代码库,有兴趣的可以看看。https://gitee.com/hugogoos/Planner

Redis 入门 - 简介的更多相关文章

  1. Redis入门及主从配置

    1.Redis入门简介 Redis是一个开源的使用ANSI C语音编写.支持网络.可基于内存亦可持久化的日志型,Key-Value数据库.支持存储的value类型包括 string(字符串).list ...

  2. Redis入门指南之一(简介)

    1. 简介 Redis是一个开源的.高性能的.基于键值对的缓存与存储系统,通过提供多种键值数据类型来适应不同的场景下的缓存与存储需求.同时Redis的诸多高级功能使其可以胜任消息队列.任务队列等不同的 ...

  3. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  4. redis入门笔记(1)

    redis入门笔记(1) 1. Redis 简介 •Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure serv ...

  5. Mac redis入门

    Mac redis入门 一.Redis简介 Redis是开源的key-value数据库,运行在内存中,但可以把数据持久化存到磁盘.Redis具有极高的性能,也为各种语言提供了丰富的接口,因此有着广泛的 ...

  6. 超强、超详细Redis入门教程【转】

    这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用red ...

  7. 超强、超详细Redis入门教程

    (1)什么是redis? Redis 是一个基于内存的高性能key-value数据库. (有空再补充,有理解错误或不足欢迎指正) (2)Reids的特点 Redis本质上是一个Key-Value类型的 ...

  8. 超详细Redis入门教程【转】

    这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下   [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使 ...

  9. redis入门笔记

    redis入门笔记 参考redis实战手册 1. Redis在windows下安装 下载地址:https://github.com/MSOpenTech/redis/tags 安装Redis 1.1. ...

  10. Redis入门手册

    这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使用r ...

随机推荐

  1. mac 安装homebrew 报443

    描述 macOS安装Homebrew时总是报错(Failed to connect to raw.githubusercontent.com port 443: Connection refused) ...

  2. mac idea快捷键整理

    抽取局部变量 option+commamd+v 生成方法内变量 option+commamd+f 生成类的静态变量 找方法 2次shift 优化import Ctrl + Alt + O 格式化代码 ...

  3. ECMA标准ECMAScript(JavaScript的一个标准)和C#

    2024 年 6 月 26 日,第 127 届 ECMA 大会正式批准了 ECMAScript 2024 语言规范,这意味着它现在正式成为最新 ECMAScript 标准.ECMAScript是ECM ...

  4. webpack4.15.1 学习笔记(一) — 基本概念

    目录 入口(entry) 出口(output) 加载器 Loaders 插件 Plugins 模式 webpack.config.js 配置 终终终终于下定决心,对你下手了,系统的学习一下. webp ...

  5. Langchain 与 LlamaIndex:LLM 应用开发框架的比较与使用建议

    Langchain 和 Llamaindex 是两种广泛使用的主流 LLM 应用开发框架.两者有什么不同?我们该如何使用?以下我根据各类资料和相关文档做了初步选型. 一.Langchain 1. 适用 ...

  6. SQL:聚集索引和非聚集索引

    聚集(clustered)索引,也叫聚簇索引 定义:数据行的物理顺序与列值(一般是主键的那一列)的逻辑顺序相同,一个表中只能拥有一个聚集索引. 注:第一列的地址表示该行数据在磁盘中的物理地址,后面三列 ...

  7. httpURLConnection 请求发起post请求

    常见请求头,在post请求之 前先了解一下,请求相关的基础 关于post 请求的方式比get  多了很多配置,其实大致一样,本想将get示例和post写在一起,这个博客功能有时有问题 一直在灰色的编辑 ...

  8. Git的存储原理

    目录 Git 设计原理 Git vs SVN Git 存储模型 .git 目录结构 Git 基本数据对象 Git 包文件 Git 引用 Git 设计原理 概括的讲,Git 就是一个基于快照的内容寻址文 ...

  9. 结合拦截器描述mybatis启动流程

    简介 mybatis的启动入口一般有两个,在结合spring框架后由spring整合包下的SqlSessionFactoryBean启动 如果没有整合spring,则有XMLConfigBuilder ...

  10. 【Docker】06 部署挂载本地目录的Nginx

    1.拉取Nginx镜像: docker pull nginx:1.19 2.生成一个测试的Nginx容器: docker run --rm --name nginx-test -p 8080:80 - ...