初识Redis---Redis的特性介绍

Redis是一个可以在内存中存储数据的中间件,可以用于作为数据库,也可以用作为数据缓存等等功能,合理的使用Redis,能够在分布式系统中大展拳脚

1.Redis特性介绍

1.最大的特点---速度快

访问和获取Redis中存储的数据快是Redis的一个最大特性

为什么访问和获取Redis中的数据速度快呢?

1.因为Redis中的数据是存储在内存中的,这样就比将数据存储在硬盘中的速度快

2.因为Redis的核心功能都是比较简单的逻辑,核心功能都是比较简单的操作内存中的数据结构

3.因为Redis采用的是单线程模型,这就避免了多线程模型中多个线程之间的竞争开销

4.从网络的角度来说,Redis采用了IO多路复用的方式,简单来说就是一个线程管理多个socket

5.因为Redis使用C语言开发的(持怀疑态度)

2.内存数据结构

Redis是通过一些类的数据结构将数据存储在内存中,Redis中主要是通过"键值对"的形式来存储数据的,是一种非关系型数据库。在Redis中,所有的key都是String类型,而value不仅可以是字符串,也可以是具体的数据结构,value主要是提供5中数据结构类型,分别是字符串(string)、哈希(hash)、列表(list)、集合(set)、有序集合(orderd set/zet),这样不仅能够便于在许多应用场景中使用,同时也能够提高开发效率

3.可编程性

可编程性也就是,针对redis的操作,可以直接通过简单的交互式命令进行操作,也可以通过一些脚本的方式(Lu编程语言),批量执行一些操作,这些操作可以带有一些逻辑

4.拓展性

拓展性就是Redis中提供了一组API,可以让我们在Redis原有的功能基础上去拓展新的功能

5.数据持久化

Redis是将数据存储在内存中的,这样就会有一个缺点,就是当程序重启时,存储在内存中的数据就会丢失,为了解决内存数据容易丢失的问题,Redis也会把数据存储到硬盘中,相当于是将内存中的数据备一份到硬盘中,是一种内存为主,硬盘为辅,如果Redis重启了,就会在重启时加载硬盘中的数据,使Redis恢复到重启之前的状态。

且Redis中提供了两种持久化方式:RDB和AOF

6.集群性

作为分布式系统中的一个中间间,Redis支持集群分布是一个很重要的特性,集群性类似于分库分表,比如,因为内存空间有限,就导致一个机器上的redis存储的数据是有限的,但是可以引入多台机器,部署多个Redis节点,让每个Redis节点存储一部分数据

7.高可用性

高可用性也可以理解为备份,Redis自身是支持"主从结构"的,从节点就相当于主节点的备份。

相关推荐
帅得不敢出门36 分钟前
Android Framework定制长按电源键关机的窗口
android·java·framework
fatfishccc37 分钟前
循序渐进学 Spring (上):从 IoC/DI 核心原理到 XML 配置实战
xml·java·数据库·spring·intellij-idea·ioc·di
小厂永远得不到的男人1 小时前
一篇文章搞懂 java 反射
java·后端
你的电影很有趣1 小时前
lesson37:MySQL核心技术详解:约束、外键、权限管理与三大范式实践指南
数据库·mysql
勇往直前plus1 小时前
一文学习nacos和openFeign
java·学习·微服务·openfeign
Warren981 小时前
公司项目用户密码加密方案推荐(兼顾安全、可靠与通用性)
java·开发语言·前端·javascript·vue.js·python·安全
David爱编程1 小时前
Java 编译期 vs 运行期:避开这些坑,少掉一半 Bug
java·后端
爬山算法1 小时前
MySQL(191) 如何优化MySQL的磁盘I/O?
android·数据库·mysql
麦兜*2 小时前
Spring Boot调用优化版AI推理微服务 集成 NVIDIA NIM指南
java·人工智能·spring boot·后端·spring cloud·微服务·ai编程
野犬寒鸦2 小时前
Java Stream API 中常用方法复习及项目实战示例
java·服务器·开发语言·数据库