当前位置: 首页 > article >正文

Redis 01 02章——入门概述与安装配置

一、入门概述

(1)是什么

  1. RedisREmote Dictionary Server(远程字典服务器
  2. 官网解释:Remote Dictionary Server(远程字典服务)是完全开源的,使用ANSIC语言编写遵守BSD协议,是一个高性能的Key-Value数据库提供了丰富的数据结构,例如String、Hash、List、Set、SortedSet等等。数据是存在内存中的,同时Redis支持事务、持久化、LUA脚本、发布/订阅、缓存淘汰、流技术等多种功能特性提供了主从模式、Redis Sentinel和Redis Cluster集群架构方案
  3. Redis之父:安特雷兹

(2)能干嘛

1.2.1主流功能与应用

  1. 分布式缓存,挡在MySQL数据库之前的带刀护卫与传统数据库关系(mysql)(1)Redis是key-value数据库(NOSQL一种),mysql是关系数据库(2)Redis数据操作主要在内存,而mysql主要存储在磁盘(3)Redis在某一些场景使用中要明显优于mysql,比如计数器、排行榜等方面(4)Redis通常用于一些特定场景,需要与Mysql一起配合使用(5)两者并不是相互替换和竞争关系,而是共用配合使用
  2. 内存存储和持久化(RDB和AOF):Redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务
  3. 高可用架构搭配:单机、主从、哨兵、集群
  4. 缓存穿透、击穿、雪崩
  5. 分布式锁
  6. 队列
    1. Reids提供listset操作,这使得Redis能作为一个很好的消息队列平台来使用
    2. 我们常通过Reids的队列功能做购买限制。比如到节假日或者推广期间,进行一些活动,对用户购买行为进行限制,限制今天只能购买几次商品或者一段时间内只能购买一次。也比较适合适用
  7. 排行版+点赞
    1. 在互联网应用中,有各种各样的排行榜,如电商网站的月度销量排行榜、社交APP的礼物排行榜、小程序的投票排行榜等等。Redis提供的zset数据类型能够快速实现这些复杂的排行榜
    2. 比如小说网站对小说进行排名,根据排名,将排名靠前的小说推荐给用户

1.2.2总体功能概述

1.2.3优势

  1. 性能极高-Redis读的速度是110000次/秒,写的速度是81000次/秒
  2. Redis数据类型丰富,不仅仅支持简单的Key-Value类型的数据,同时还提供list,set,zset,hash等数据结构的存储
  3. Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用
  4. Redis支持数据的备份,即master-slave模式的数据备份

1.2.4小总结

(3)去哪下

1.3.1官网地址

  1. 英文:Redis - The Real-time Data Platform
  2. redis中文文档:redis中文文档

1.3.2下载安装包

  1. 安装包:Index of /releases/ (redis.io)
  2. 本次:redis-7.0.0.tar.gz

1.3.3其它文档资料

  1. Redis源码地址:https://github.com/redis/redis
  2. Redis在线测试地址(不用下载也能玩): https://try.redis.io/
  3. Redis命令参考:Redis 命令参考 — Redis 命令参考

(4)怎么玩

  1. 官网文档
  2. 多种数据类型基本操作和配置
  3. 持久化和复制,RDB/AOF
  4. 事务的控制
  5. 复制,集群等

(5)Redis迭代演化和Redis7新特性浅谈

1.5.1Redis版本迭代推演介绍

  1. 几个里程碑式的重要版本
  2. 命名规则
    1. 版本号第二位如果是奇数,则为非稳定版本 如2.7、2.9、3.1
    2. 版本号第二位如果是偶数,则为稳定版本 如2.6、2.8、3.0、3.2
    3. 当前奇数版本就是下一个稳定版本的开发版本,如2.9版本是3.0版本的开发版本
    4. 历史发布版本的源码:https://download.redis.io/releases/

1.5.2Redis7.0新特性概述

https://github.com/redis/redis/releases

1.5.3本次将对Redis7的一部分新特性做说明(not all)

二、安装配置

(1)自己购买云服务器

自己购买阿里云、青牛云、腾讯云或华为云服务器,自带centoOS或者Ubuntu环境,直接开干

(2)VMWare本地虚拟机

  1. VMWare虚拟机的安装
  2. 如何查看自己的Linux是32位还是64位

(3)Redis的安装

2.3.1日常使用什么系统安装redis

99%都是Linux版的运用和安装,Windows版不作为重点

2.3.2Windows版安装

  1. 下载地址:https://github.com/dmajkic/redis/downloads
  2. 下载到的Redis支持32bit和64bit。根据自己实际情况选择,将64bit的内容cp到自定义盘符安装目录取名redis。 如 C:\reids
  3. 打开一个cmd窗口 使用cd命令切换目录到 C:\redis 运行 redis-server.exe redis.conf
  4. 如果想方便的话,可以把redis的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个redis.conf可以省略
  5. 如果省略,会启用默认的。输入之后,会显示如下界面:
  6. 这时候另启一个cmd窗口,原来的不要关闭,不然就无法访问服务端了
  7. 切换到redis目录下运行 redis-cli.exe -h 127.0.0.1 -p 6379

2.3.3Linux版安装

(1)Linux环境安装Redis必须先具备gcc编译环境
  1. 什么是gccgcc是linux下的一个编译程序,是C程序的编译工具
  2. 查看gcc -v
  3. 安装
    1. 安装redis之前需要具备c++库环境
    2. yum -y install gcc-c++
    3. 命令案例
(2)版本选择
(3)Redis7安装步骤
  1. 下载获得redis-7.0.0.tar.gz后将它放入我们的Linux目录/opt
    wget https://download.redis.io/releases/redis-7.0.0.tar.gz

  2. /opt目录下解压redis
    tar -zxvf redis-7.0.0.tar.gz

  3. 进入目录
    cd redis-7.0.0
  4. 在redis-7.0.0目录下执行make命令
    make && make install
    出现下图,说明成功
  5. 查看默认安装目录:/usr/local/bin
    1. Linux下的/usr/local类似我们Windows系统的C:\Program Files
    2. 安装完成后,去/usr/local/bin下查看
    3. 说明
  6. 将默认的redis.conf拷贝到自己定义好的一个路径下
    cd /opt/redis-7.0.0
    pwd
    ls
    mkdir /myredis
    cp redis.conf /myredis/
    ls -l /myredis
  7. 修改/myredis目录下redis.conf配置文件做初始化设置
  8. 启动服务
    1. 运行redis-server命令,启用/myredis目录下的redis.conf配置文件
    2. 执行命令
      redis-server redis7.conf

  9. 连接服务
    1. 运行redis-cli命令
    2. 执行命令(不写端口,默认6379
      redis-cli -a 命令 -p 端口

      出现下图,说明成功

    3. 第二种登录方式

    4. Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe。这段警告看着不舒服怎么办?解决办法将标准错误去除即可,追加2>/dev/null,将标准错误丢弃即可,就没有烦人的警告了

  10. Redis端口为什么是6379:Redis的默认端口是6379,是由手机键盘字母MERZ的位置决定的。MERZ在Antirez的朋友圈语言中是"愚蠢和傻B"的代名词,源于意大利广告女郎Alessia Merz在电视节目上说了一堆愚蠢的话,redis之父对她有"特殊"印象,就给她弄成端口号了
  11. 永远的helloworld
  12. 关闭
    1. 实例关闭
      redis-cli -a 密码 shutdown    #在Redis服务器外面关闭命令
      shutdown                        #如果在Redis服务器里面可以直接使用shutdown命令
    2. 实例关闭:指定端口关闭
      redis-cli -p 端口 shutdown
(4)Redis7卸载步骤
  1. 停止redis-server服务
  2. 命令
    ls -l /usr/local/bin/redis-*
    rm -rf /usr/local/bin/redis-*

2.3.4docker版的redis安装配置参考

相关文章:

Redis 01 02章——入门概述与安装配置

一、入门概述 (1)是什么 Redis:REmote Dictionary Server(远程字典服务器)官网解释:Remote Dictionary Server(远程字典服务)是完全开源的,使用ANSIC语言编写遵守BSD协议,是一个高…...

Large Language Model Distilling Medication Recommendation Model

摘要:药物推荐是智能医疗系统的一个重要方面,因为它涉及根据患者的特定健康需求开具最合适的药物。不幸的是,目前使用的许多复杂模型往往忽视医疗数据的细微语义,而仅仅严重依赖于标识信息。此外,这些模型在处理首次就…...

2025最新版Node.js下载安装~保姆级教程

1. node中文官网地址:http://nodejs.cn/download/ 2.打开node官网下载压缩包: 根据操作系统不同选择不同版本(win7系统建议安装v12.x) 我这里选择最新版win 64位 3.安装node ①点击对话框中的“Next”,勾选同意后点…...

deepseek:三个月备考高级系统架构师

一、备考总体规划(2025年2月11日 - 2025年5月) 1. 第一阶段:基础夯实(2025年2月11日 - 2025年3月10日) 目标:快速掌握系统架构师考试的核心知识点。 重点内容: 计算机组成原理、操作系统、数据…...

springboot如何将lib和jar分离

遇到一个问题&#xff0c;就是每次maven package或者maven install后target中的jar很大&#xff0c;少的50几MB&#xff0c;大的100多兆 优化前&#xff1a; 优化后&#xff1a; 优化前 优化后压缩率77.2MB4.65MB93% 具体方案&#xff1a; pom.xml中 <build><…...

解锁建造者模式:Java 编程中的对象构建秘籍

系列文章目录 后续补充~~~~ 文章目录 一、引言二、建造者模式原理剖析2.1 定义与概念2.2 模式结构与角色2.2.1 产品(Product)2.2.2 建造者(Builder)2.2.3 具体建造者(ConcreteBuilder)2.2.4 指挥者(Director)2.3 工作流程与交互机制三、建造者模式在 Java 中的优势3.1 …...

RocketMQ和Kafka如何实现顺序写入和顺序消费?

0 前言 先说明kafka&#xff0c;顺序写入和消费是Kafka的重要特性&#xff0c;但需要正确的配置和使用方式才能保证。本文需要解释清楚Kafka如何通过分区来实现顺序性&#xff0c;以及生产者和消费者应该如何配合。   首先&#xff0c;顺序写入。Kafka的消息是按分区追加写入…...

Electron 全面解析:跨平台桌面应用开发指南

引言 在当今多平台并存的数字时代&#xff0c;如何高效开发跨平台桌面应用成为开发者面临的重要挑战。Electron作为GitHub开源的跨平台框架&#xff0c;凭借其独特的Web技术融合能力&#xff0c;已成为构建桌面应用的热门选择。本文将深入探讨Electron的核心原理、开发实践及未…...

Node.js技术原理分析系列——Node.js调试能力分析

本文由体验技术团队屈金雄原创。 Node.js 是一个开源的、跨平台的 JavaScript 运行时环境&#xff0c;它允许开发者在服务器端运行 JavaScript 代码。Node.js 是基于 Chrome V8引擎构建的&#xff0c;专为高性能、高并发的网络应用而设计&#xff0c;广泛应用于构建服务器端应…...

从技术债务到架构升级,滴滴国际化外卖的变革

背 景 商家营销简述 在外卖平台的运营中&#xff0c;我们致力于通过灵活的补贴策略激励商家&#xff0c;与商家共同打造良好的合作关系&#xff0c;也会提供多样化的营销活动&#xff0c;帮助商家吸引更多用户下单。通过这些活动&#xff0c;不仅能够提高商家的销量&#xff0c…...

DeepSeek教unity------MessagePack-05

动态反序列化 当调用 MessagePackSerializer.Deserialize<object> 或 MessagePackSerializer.Deserialize<dynamic> 时&#xff0c;二进制数据中存在的任何值都将被转换为基本值&#xff0c;即 bool、char、sbyte、byte、short、int、long、ushort、uint、ulong、…...

SQL Query美化

推荐一个可以美化Query的网站&#xff01; 名称&#xff1a;SQL formatter | Online free SQL Beautifier 地址&#xff1a;https://sqlformatter.org/# 在处理 SQL 查询语句时&#xff0c;可读性是至关重要的。 杂乱无章的 SQL代码不仅难以理解&#xff0c;还会给后续的维…...

探索RDMA技术:从基础到实践

1. 引言 在当今的高性能计算(HPC)和数据中心领域,数据传输的效率和速度至关重要。RDMA(Remote Direct Memory Access,远程直接内存访问)技术作为一种高效的网络通信机制,能够显著减少数据传输的延迟和CPU负载。本文将从基础到实践,详细介绍RDMA技术及其编程模型,帮助…...

2025 docker可视化管理面板DPanel的安装

1.什么是 DPanel &#xff1f; DPanel 是一款 Docker 可视化管理面板&#xff0c;旨在简化 Docker 容器、镜像和文件的管理。它提供了一系列功能&#xff0c;使用户能够更轻松地管理和部署 Docker 环境。 软件特点&#xff1a; 可视化管理&#xff1a;提供直观的用户界面&#…...

mapbox V3 新特性,添加下雪效果

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;mapbox 从入门到精通 文章目录 一、&#x1f340;前言1.1 ☘️mapboxgl.Map 地图对象…...

【STM32】H743的以太网MAC控制器的一个特殊功能

调试743的MAC&#xff0c;翻阅手册的时候&#xff0c;发现了一个有意思的功能 混杂模式 H743的MAC控制器&#xff0c;可以设置为混杂模式&#xff0c;这就意味着它可以做一些网络监控的应用&#xff0c;譬如连接具备端口镜像功能的交换机&#xff0c;然后直接代替PC实现网络数据…...

WEB攻防-第60天:PHP反序列化POP链构造魔术方法流程漏洞触发条件属性修改

目录 一、序列化与反序列化基础 1.1 什么是序列化与反序列化 二、魔术方法的生命周期 2.1 常见的魔术方法 2.2 模式方法的生命周期触发调用 2.2.1 __construct() 2.2.2 __destruct() 2.2.3 __sleep() 2.2.4 __wakeup() 2.2.5 __invoke() 2.2.6 __toS…...

STM32硬件SPI函数解析与示例

1. SPI 简介 SPI&#xff08;Serial Peripheral Interface&#xff09;即串行外设接口&#xff0c;是一种高速、全双工、同步的通信总线&#xff0c;常用于微控制器与各种外设&#xff08;如传感器、存储器等&#xff09;之间的通信。STM32 系列微控制器提供了多个 SPI 接口&a…...

如何设置Python爬虫的User-Agent?

在Python爬虫中设置User-Agent是模拟浏览器行为、避免被目标网站识别为爬虫的重要手段。User-Agent是一个HTTP请求头&#xff0c;用于标识客户端软件&#xff08;通常是浏览器&#xff09;的类型和版本信息。通过设置合适的User-Agent&#xff0c;可以提高爬虫的稳定性和成功率…...

二、交换机的vlan子设备接入

一、交换机的vlan设置-CSDN博客 二、交换机的vlan子设备接入-CSDN博客 接上篇的文章&#xff0c;本文接入了子设备 网络结构如下&#xff1a; 用路由器A和POE交换机B代替第一篇中的笔记本电脑&#xff0c;路由器A和交换机B都关闭DHCP服务&#xff0c;并分别接入一个IPC&#…...

Spring IoC的实现机制是什么?

大家好&#xff0c;我是锋哥。今天分享关于【Spring IoC的实现机制是什么&#xff1f;】面试题。希望对大家有帮助&#xff1b; Spring IoC的实现机制是什么&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Spring IoC&#xff08;Inversion of Control…...

配置mysql8.0使用PXC实现高可用。

准备好下面三台服务器 cat >> /etc/hosts << EOF 192.168.1.11 pxc1 192.168.1.12 pxc2 192.168.1.13 pxc3 EOF 三台服务器同时进行&#xff0c;下载安装包 [rootlocalhost ~]#yum module disable mysql [rootlocalhost ~]#yum ins…...

对openharmony HDF驱动框架的C/S设计模式和单例类的说明

在分析openharmony的HDF驱动框架时我们会发现用了很多面向对象的思想&#xff0c;例如类继承、接口、单例类等&#xff0c;本来应该是好事情&#xff0c;**但使用时对象之间的关系交错复杂&#xff0c;不太符合linux内核分层分模块的思路&#xff0c;导致整体理解起来比较困难&…...

联合汽车电子嵌入式面试题及参考答案

所使用的板子 Flash 内存是多少,单位 b 指的是 byte 还是 bit? 不同的嵌入式板子具有不同的 Flash 内存容量。常见的有几 KB 到几 MB 甚至更大。比如一些小型的单片机开发板可能只有几 KB 的 Flash,如 AT89C51 单片机的 Flash 一般为 4KB,这里的 KB 是指千字节(kilobyte)…...

Vue 2 路由指南:从基础到高级

注意&#xff1a;对于代码看不清的部分&#xff0c;用鼠标选中就能看到了&#xff0c;背景颜色和字体颜色过于接近&#xff0c;我也不知道怎么调&#xff0c;只能这样子先看着了 一、Vue Router 是什么&#xff1f; Vue Router 是 Vue.js 官方的路由管理器&#xff0c;它允许…...

vue学习10

1.GPT和Copilot Copilot Tab接受 删除键&#xff0c;不接受 ctrlenter更多方案 更适合的是修改方向 const submitForm async () > {//等待校验结果await formRef.value.validate()//提交修改await userUpdateInfoService(form.value)//通知user模块&#xff0c;进行数据更…...

WebSocket 握手过程

文章目录 1. WebSocket 握手过程概述2. 客户端发送握手请求3. 服务器响应握手请求4. 客户端验证握手响应5. 建立 WebSocket 连接6. 安全性与注意事项7. 应用示例 在现代 Web 开发中&#xff0c;WebSocket 协议因其高效的实时通信能力而被广泛应用。WebSocket 允许客户端和服务器…...

如何正确安装Stable Diffusion Web UI以及对应的xFormers

本文是我总结的步骤&#xff0c;验证了几次保证是对的。因为正确的安装 Stable Diffusion Web UI 以及对应的 xFormers 实在是太麻烦了&#xff0c;官方和网上的步骤都是残缺和分散的&#xff0c;加上国内网络速度不理想&#xff0c;所以需要一些额外步骤&#xff0c;之前研究出…...

图形渲染(一)——Skia、OpenGL、Mesa 和 Vulkan简介

1.Skia —— 2D 图形库 Skia 是一个 2D 图形库&#xff0c;它的作用是为开发者提供一个高层次的绘图接口&#xff0c;方便他们进行 2D 图形渲染&#xff08;比如绘制文本、形状、图像等&#xff09;。Skia 本身不直接管理 GPU 或进行底层的渲染工作&#xff0c;而是通过 底层图…...

从源代码编译构建vLLM并解决常见编译问题

源代码构建vLLM 前言构建vLLM异常问题异常1异常2异常3 构建成功 前言 在通过创建全新虚拟环境条件下&#xff0c;使用pip install vllmx.x.x.方式安装VLLM后&#xff0c;遇到了VLLM使用方面的异常&#xff0c;经过多种方式尝试解决&#xff0c;最终无果。 仔细查看官方文档后&…...