初识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自身是支持"主从结构"的,从节点就相当于主节点的备份。

相关推荐
双力臂4041 小时前
Java IO流体系详解:字节流、字符流与NIO/BIO对比及文件拷贝实践
java·开发语言·nio
钮钴禄·爱因斯晨1 小时前
Java API (二):从 Object 类到正则表达式的核心详解
java·开发语言·信息可视化·正则表达式
Monkey-旭2 小时前
Android 蓝牙通讯全解析:从基础到实战
android·java·microsoft·蓝牙通讯
BoneToBone2 小时前
java list 与set 集合的迭代器在进行元素操作时出现数据混乱问题及原因
java·开发语言·list
TinpeaV3 小时前
Elasticsearch / MongoDB / Redis / MySQL 区别
大数据·redis·mysql·mongodb·elasticsearch
程序人生5183 小时前
MongoDB 查询时区问题
数据库·mongodb
cookqq3 小时前
mongodb源代码分析createCollection命令由create.idl变成create_gen.cpp过程
数据库·算法·mongodb·nosql
切糕师学AI3 小时前
redis 如何优雅地进行键设计?
redis
WanderInk3 小时前
深入解析:Java Arrays.sort(intervals, Comparator.comparingInt(a -> a[0])); 一行代码的背后功力
java·后端·算法
O执O3 小时前
JavaWeb笔记四
java·hive·hadoop·笔记·web