Redis概述和安装

news2025/1/11 20:04:31

🎈个人公众号:🎈 :✨✨✨ 可为编程✨ 🍟🍟
🔑个人信条:🔑 知足知不足 有为有不为 为与不为皆为可为🌵
🍉本篇简介:🍉 本篇详细阐述了Redis概述和安装,如有出入还望指正。

今天开启中间件专栏的第一篇文章,先以Redis中间件为例,从部署安装、封装使用、原理剖析、集群搭建、场景模拟等多个角度,全方位总结Redis各种场景下的使用特性和相关领域知识,将自己的经验和学习进行输出,如有纰漏,联系我更正,这是一个漫长的过程,关注我,你我一道同行。

1.1、安装redis

(1)下载redis

  1. https://download.redis.io/releases/

(2)将redis安装包拷贝到/opt/目录

(3)解压

  1. tar -zvxf redis-7.2.1.tar.gz

(4)安装gcc

  1. yum install gcc

(5)进入目录

  1. cd redis-7.2.1

(6)编译

  1. make

(7)执行make install进行安装

(8)查看安装目录:/usr/local/bin

目录介绍

  • redis-benchmark:性能测试工具,可以在自己本子进行调试,看看自己本子性能如何。

  • redis-check-aof:修复有问题的AOF文件,rdb和aof后面咱单独出一篇文章详细讲解。

  • redis-check-dump:修复有问题的dump.rdb文件

  • redis-sentinel:redis集群使用

  • redis-server:redis服务器启动命令

  • redis-clit:客户端,操作入口

  • 关注公众号【可为编程】回复【面试】领取2023年最新面试题!!!

1.2、启动redis

方式1:前台启动(不推荐)

执行redis-server命令,这种如果关闭启动窗口,则redis会停止。

方式2:后端启动(推荐)

后台方式启动后,关闭窗口后,redis不会被停止.

步骤如下

(1)复制redis.conf文件到/etc目录

  1. cp /opt/redis-6.2.1/redis.conf /etc

(2)使用vi命令修改/etc/redis.config中的配置,将后台启动设置daemonize改为yes,如下

  1. daemonize yes

(3)启动redis

  1. redis-server /etc/redis.conf

(4)查看redis进程

1.3、关闭redis

方式1:kill -9 pid

方式2:redis-cli shutdown

1.4、进入redis命令窗口

执行redis-cli即可进入redis命令窗口,然后就可以执行redis命令了。

1.5、redis命令大全

  1. http://doc.redisfans.com/

1.6、redis介绍相关知识

  • 默认端口6379

  • 默认16个数据库,类似数组的下标从0开始,初始默认使用0号库,后面会进行详细说明

  • 使用select <dbid>来切换数据库,如:select 1,切换到第2个库。

  • 统一密码管理,所有的库密码相同

  • dbsize:查看当前数据库的key的数量

  • flushdb:情况当前库

  • flushall:清空全部库

redis是单线程+多路IO复用技术,那问题来了,为啥单线程还这么快呢?多路复用技术又是啥尼?

这里咱先简单说一下,后面单独拿出一篇文章详细的进行分析,首先单线程是Redis的文件事件处理器的模型为单线程, Redis的文件事件处理器是一个单线程模型,采用IO多路复用机制同时监听多个socket,根据socket上的事件来选择对应的事件处理器来处理这个事件。具体来说,如果被监听的socket准备好执行accept、read、write、close等操作的时候,跟操作对应的文件事件就会产生,这时文件事件处理器就会调用之前关联好的事件处理器来处理这个事件。每个具体的事件处理器总和一个文件描述符相关,它使用描述符来识别事件、识别应用程序提供的服务。

多路复用是指使用一个线程来检测多个文件描述符(socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞到超时,得到就绪状态后,进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)。

关注公众号【可为编程】回复【面试】领取2023年最新面试题!!!

在Redis中,只有一个文件事件处理器。它由四个部分组成:套接字、I/O多路复用程序、文件时间分派器(dispatcher)、事件处理器。这个处理器是单线程的,采用IO多路复用机制同时监听多个socket,根据socket上的事件来选择对应的事件处理器来处理这个事件。Redis相比于memcache支持多数据类型,支持持久化,单线程和多路复用机制,而memcache采用串行+多线程+锁的实现原理。

Redis6.0中提供了多线程,命令解析和io数据读写这部分采用了多线程,而命令的执行还是采用的是单线程,多个客户端发送来的命令会在同一个线程去执行,相当于排队执行,效率极高。后续

IOC容器创建bean实例的4种方式

由表及里分析Spring-IOC容器始末

Spring中的核心概念

不要称之为卷土重来:为什么 Java 仍然会是冠军!

关于高并发你必须知道的几个概念

线程的创建方式对比与线程池相关原理剖析

BigDecimal对象的日常使用汇总

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

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

相关文章

经典OJ题:找环节点——代码解析

题目&#xff1a; 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测…

【每日一题】统计范围内的元音字符串数

文章目录 Tag题目来源题目解读解题思路方法一&#xff1a;遍历 其他语言python3 写在最后 Tag 【遍历】【数组】【2023-11-07】 题目来源 2586. 统计范围内的元音字符串数 题目解读 统计范围内的元音字符串数。 解题思路 方法一&#xff1a;遍历 遍历下标在 [left, right]…

用循环结构程序自动化计算——计数循环

用循环结构程序自动化计算——计数循环 低阶目标&#xff1a; 利用for循环结构来完成已知次数的自动化处理&#xff0c;掌握计数循环结构应用方法 高阶目标&#xff1a; 学会利用for循环解决生活中的实际问题 用循环结构程序自动化计算——计数循环 用循环结构程序自动化计算…

Leetcode48旋转图像

思路&#xff1a;找规律 方法一、一般辅助数组解法 行列转换&#xff0c;第一行变到第三列&#xff0c;第二行变到第二列&#xff0c;第三行变到第一列 matrix[row][col] matrix[col][n-row-1] 然后复制回原数组 class Solution {public void rotate(int[][] matrix) {in…

第十二章 Python正则表达式

系列文章目录 第一章 Python 基础知识 第二章 python 字符串处理 第三章 python 数据类型 第四章 python 运算符与流程控制 第五章 python 文件操作 第六章 python 函数 第七章 python 常用内建函数 第八章 python 类(面向对象编程) 第九章 python 异常处理 第十章 python 自定…

独立键盘接口设计(Keil+Proteus)

前言 软件的操作参考这篇博客。 LED数码管的静态显示与动态显示&#xff08;KeilProteus&#xff09;-CSDN博客https://blog.csdn.net/weixin_64066303/article/details/134101256?spm1001.2014.3001.5501实验&#xff1a;用4个独立按键控制8个LED指示灯。 按下k1键&#x…

VB.NET—DataGridView控件教程详解

目录 前言: 过程: 第一步: 第二步: 第三步: 第四步: 第五步&#xff1a; 番外篇: 总结: 前言: DataGridView是.NET FormK中的一个Windows窗体控件&#xff0c;它提供了一个可视化的表格控件&#xff0c;允许用户以表格形式显示和编辑数据。它通常用于显示和编辑数据库…

50基于matlab的传统滤波、Butterworth滤波、FIR、移动平均滤波、中值滤波、现代滤波、维纳滤波、自适应滤波、小波变换

基于matlab的传统滤波、Butterworth滤波、FIR、移动平均滤波、中值滤波、现代滤波、维纳滤波、自适应滤波、小波变换&#xff0c;七种滤波方法&#xff0c;可替换自己的数据进行滤波&#xff0c;程序已调通&#xff0c;可直接运行。 50matlabButterworth滤波 (xiaohongshu.com)…

AI创作系统ChatGPT商业运营系统源码+支持GPT4/支持ai绘画

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…

关于 HTML 的一切:初学者指南

HTML 代表超文本标记语言&#xff0c;是用于创建网页和 Web 应用程序的标准语言。 本指南将全面介绍 HTML&#xff0c;涵盖从基本语法和语义到更高级功能的所有内容。 我的目标是用简单的术语解释 HTML&#xff0c;以便即使没有编码经验的人也能学习如何使用 HTML 构建网页。…

Ps:色彩范围

Ps菜单&#xff1a;选择/色彩范围 Select/Color Range 色彩范围 Color Range是一个功能强大选择命令&#xff0c;不仅可以基于颜色进行选择&#xff0c;而且可以基于影调进行选择。不仅可以用来检测人脸选择肤色&#xff0c;也可用来选择超出印刷色域范围的区域。 在图层蒙版的…

【人工智能专栏】(5)知识表示方法的习题及其解答

目录 1. 简述2. 题目3. 解答4. 文章传送门 1. 简述 前面几篇文章&#xff0c;我们讲述了人工智能中知识表示的一些常用方法&#xff0c;下面将给出一些习题供大家练习&#xff0c;看看是否完全掌握了相关的知识。 2. 题目 什么是知识&#xff1f;有哪几类分类方法&#xff1f…

YOLOv5 7.0 网络结构解读

前言 YOLOV5是一系列在COCO数据集上预训练的目标检测架构和模型&#xff0c;结合了在数千个小时的研究和开发中获得的经验教训和最佳实践。本文主要以yolov5s为例介绍YOLOV5-v7.0版本的网络架构及初始化超参数。 一.YOLOV5s网络结构图 网络结构主要包含以下部分&#xff1a;…

Qwt QwtKnob绘制旋钮

1.简介 QwtKnob是Qwt库中的一个类&#xff0c;用于绘制一个旋钮样式的仪表盘。它继承QwtAbstractSlider类&#xff0c;提供了一些额外的功能和样式&#xff0c;用于旋转和选择值。 以下是类继承关系&#xff1a; 2.常用方法 旋钮&#xff08;Knob&#xff09;相关的属性和方法…

UseGalaxy.cn生信云|生物信息必备技能-出版级别的circos圈图绘制

2023-11-06&#xff0c;Galaxy生信云平台 UseGalaxy.cn 新增circos圈图绘制工具。 Graph/Display Data Circos visualizes data in a circular layout (Galaxy Version 0.69.8galaxy12) Circos&#xff08;Krzywinski等人&#xff0c;2009年&#xff09;是一个用于以圆形布局可…

lv10 嵌入式开发 在线英英词典

1 有道词典流程分析及本项目功能描述 1.1 抽取项目原理分析 本项目功能描述 用户注册和登录验证服务器端将用户信息和历史记录保存在数据库中。客户端输入用户名和密码&#xff0c;服务器端在数据库中查找、匹配&#xff0c;返回结果单词在线翻译根据客户端输入的单词在字典文…

项目实战:组件扫描实现(1)-扫描类路径所有文件

1、ComponentScan 组件扫描类 一下知识本人都是在Maven工程下总结的&#xff0c;所以目录结构会不一样这个类的作用是扫描所有的classes目录下的所有的字节码文件&#xff0c;找到相应的类&#xff0c;然后找到相应类上的注解 package com.csdn.mymvc.core; import java.io.Fi…

Single-cell 10x Cell Ranger analysis

first step download SRR data #这是批量下载 nohup prefetch -X 100GB --option-file SRR_Acc_List.txt & nohup fastq-dump --gzip --split-files -A ./SRR13633760 -O /home/scRNA/ &next Build a custom reference using Cell Ranger mkref 首先&#xff0c;找…

音视频技术开发周刊 | 318

每周一期&#xff0c;纵览音视频技术领域的干货。 新闻投稿&#xff1a;contributelivevideostack.com。 日程揭晓&#xff01;速览深圳站大会专题议程详解 LiveVideoStackCon 2023 音视频技术大会深圳站&#xff0c;保持着往届强大的讲师阵容以及高水准的演讲质量。两天的参会…

selenium自动化测试入门 —— 层级定位与定位一组元素

一、层级定位(二次定位) 在实际测试过程中&#xff0c;一个页面可能有多个属性基本相同的元素&#xff0c;如果要定位到其中的一个&#xff0c;这时候需要用到层级定位。先定位其父元素&#xff0c;然后再通过父元素定位该元素。 示例&#xff1a;通过层级定位搜狗输入框 dr…