Redis的特性与安装

回顾

Redis是一个在内存中存储数据的中间件,可以用来当数据库用,也可以作为缓存用(这里的缓存往往是对数据库缓存)。

中间件:和业务无关的服务,功能更加通用,如:数据库,缓存,消息队列

数据库缓存:在金融领域中有一个“二八定律”,在互联网中也使用,指的是20%的数据可以满足80%的请求,由于Redis是纯内存的,空间不能很大,而数据库相较于Redis访问速度比较慢,因此可以将20%的热点数据进行缓存在Redis中,而剩下的冷数据存储在数据中即可。当请求过来先检查是否是热点数据,如果不是再去访问数据库,这样就能整体提高效率了。

Redis特性

1.In-memory data structures(内存数据结构)

Redis是通过键值对("Key-Value")的方式来组织数据的,Key都是String类型,Value是String、Hash、Set等类型。

在MySQL中主要是通过“表”的形式来组织数据的,MySQL也被称为"关系型数据库"。

在Redis中主要是通过"键值对"的形式来组织数据的,Redis也被称为"非关系型数据库"。

2.Programmability(可编程的)

Redis的操作,可以直接通过简单的交互式命令进行操作,也可以通过一些脚本,批量执行一些操作。

3.Extensibility(可扩展的)

可以在Redis原有的功能基础上再进行扩展。Redis本身提供了一组API,程序猿可以使用C、C++、Rust这些语言编写扩展功能。

4.Persitence(持久化)

虽然Redis是把数据存储在内存上的,但是内存上的数据一旦重启或掉电以后就没了,所以Redis也支持将数据存储在硬盘中,以内存为主,硬盘为辅,后续重启了服务,可以从硬盘中将数据恢复到内存上。

5.Clustering(集群)

Redis本身也是支持集群的,一个Redis能存储的数据是有限的,那么可以引入多个主机,部署多个Redis节点,每个Redis存储数据的一部分。

6.High availability(高可用的)

这里的高可用也意味着冗余,指的是有多个Redis节点存储的数据相同,一旦有一个Redis节点发生故障,另一个节点就立即顶上,Redis也是支持主从结构的,从节点可以从主节点那自动备份数据,这样虽然会造成冗余,但可以提高可用性。

7.Fast(快)

Redis最主要的特性还是因为快!

原因:

1.Redis是将在内存中存储数据的,相较于访问硬盘的数据库而言,要快很多

2.Redis的核心功能都是比较简单的去操作内存上的数据,而数据库需要考虑的东西很多

3.Redis实现了IO多路复用,使用一个线程管理多个Socket

4.Redis使用的是单线程模型,减少了不必要的线程之间的竞争开销

5.Redis底层使用的是C语言开发的,比较快,但MySQL也是用C语言开发的,所以这不是根本原因~

Redis的安装

以下安装是针对于Unbuntu系统

1.首先切换到root用户

2.使用apt命令来搜索相关软件包

apt search redis

3.使用apt安装redis

apt install redis

4.切换到redis客户端,ping本地回环主机服务器,测试是否安装完成

redis-cli

当显示PONG的时候代表安装完成了。

不过我们的redis只能在本地主机上通信,要想实现跨主机的方式,还需要再修改一下配置。

首先我们进入redis的配置文件

cd /etc/redisvim redis.conf

最后重启一下redis即可。

#重启redis服务器
service redis-server restart#查看redis服务器的状态
service redis-server status

最终显示如下信息,表明redis修改成功了~

最后

下一篇将会讲解Redis的基本指令~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/17.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【笔试强训】Day1 --- 数字统计 + 两个数组的交集 + 点击消除

文章目录 1. 数字统计2. 两个数组的交集3. 点击消除 1. 数字统计 【链接】:数字统计 解题思路:模拟,利用数学知识,计算每个数字中2出现的个数。(这里也可以将数字转换成字符串来统计字符’2’出现的个数&#xff09…

如何使用Flask搭建web程序框架并实现无公网IP远程访问本地程序

文章目录 前言1. 安装部署Flask并制作SayHello问答界面2. 安装Cpolar内网穿透3. 配置Flask的问答界面公网访问地址4. 公网远程访问Flask的问答界面 前言 Flask是一个Python编写的Web微框架,让我们可以使用Python语言快速实现一个网站或Web服务,本期教程…

bonding原理分析和问题排查

bonding原理 发送端: 使用网卡bond3模式(广播模式BOND_MODE_BROADCAST)将报文从两个网卡同时发出,无需修改报文。 接收端: 根据发送节点时间的链路通断状态,接收端设置一条线路为活动线,另一条…

免费泛域名SSL如何申请,和通配符有什么区别

-----让我们明确什么是泛域名。所谓泛域名,是指使用星号(*)作为子域名的占位符,它可以匹配任意子域名。-----而通配符在域名中,它可以出现在主域名的任何位置,它可以用于主域名和子域名的保护。 主要应用场…

XZ-Utils后门事件过程及启示

Part.01 背景 XZ-Utils(曾经叫做LZMA Utils)是一款开源的无损压缩命令行工具,是用C语言编写的跨平台工具,可以用于类Unix系统和Windows系统。在多数情况下,xz的压缩率要好过gzip和bzip2,解压速度也快过bz…

Java的数组定义和使用

目录 1.前言 2.数组的概念 3.在Java中的创建和初始化 3.1数组的创建 3.2数组的初始化 4.关于使用 4.1数组元素的访问 4.2数组的遍历 4.3length和length()的区别 5.数组其实是引用类型数据 5.1初始JVM的内存分布 5.2基本类型变量与引用类型变量的区别 5.3关于null的认识 5.4设计…

工作流JBPM画图与配置

文章目录 ☃️7.1 画图☃️7.2 配置7.2.1 配置任务办理人7.2.1.1 写死的方式配置任务办理人(不推荐)7.2.1.2 #{}方式配置任务办理人7.2.1.3 实现接口方式配置任务办理人7.2.1.4 方法指定方式分配任务办理人 7.2.2 配置节点属性7.2.2.1 判断节点(decision…

Sourcetree安装使用(补个笔记)

Sourcetree介绍 Sourcetree是一款免费的Git图形化客户端,它由Atlassian开发,提供了跨平台的支持,可运行在Windows和Mac操作系统上。Sourcetree可以让开发者更方便地使用Git来管理代码,不需要在命令行中输入复杂的Git命令&#xf…

HTML学习笔记:链接target属性

关于target的使用&#xff1a; <a href"https://www.baidu.com" target"_parent">网址链接</a>其中关于target四个特殊目标的理解&#xff0c;W3school上的解释为&#xff1a; HTML 标签的 target 属性 其中_black和_self两个属性很好理解&…