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

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协议,是一个高…...

windows基于cpu安装pytorch运行faster-whisper-large-v3实现语音转文字

1.创建虚拟环境 conda create -n faster-whisper python3.10 conda activate faster-whisper 2.安装cpu版本的pytorch pip3 install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple 3.验证pytorch安装结果 (faster-whisper) H:\big-model\faste…...

AI大模型(如GPT、BERT等)可以通过自然语言处理(NLP)和机器学习技术,显著提升测试效率

在软件测试中,AI大模型(如GPT、BERT等)可以通过自然语言处理(NLP)和机器学习技术,显著提升测试效率。以下是几个具体的应用场景及对应的代码实现示例: 1. 自动生成测试用例 AI大模型可以根据需求文档或用户故事自动生成测试用例。 代码示例(使用 OpenAI GPT API): …...

【Prometheus】prometheus黑盒监控balckbox全面解析与应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…...

CSS实现单行、多行文本溢出显示省略号(…)

在网页设计中,我们常常遇到这样的情况:文本内容太长,无法完全显示在一个固定的区域内。为了让界面看起来更整洁,我们可以使用省略号(…)来表示内容溢出。这不仅能提升用户体验,还能避免内容溢出…...

服务器中部署大模型DeepSeek-R1 | 本地部署DeepSeek-R1大模型 | deepseek-r1部署详细教程

0. 部署前的准备 首先我们需要足够算力的机器,这里我在vultr中租了有一张A16显卡一共16GB显存的服务器作为演示。部署的模型参数为14b的。如果需要部署满血版本671b的,需要更大的算力支持,这里由于是个人资金有限,就演示14b的部署…...

元学习之孪生网络Siamese Network

简介:元学习是一种思想,一般以神经网络作为特征嵌入的工具,实现对数据特征的提取,然后通过构造某种指标以引导优化器对模型参数进行优化。而最小化距离是最常见的学习目标,这就是熟知的度量学习,度量学习里…...

深入HBase——引入

引入 前面我们通过深入HDFS到深入MapReduce ,从设计和落地,去深入了解了大数据最底层的基石——存储与计算是如何实现的。 这个专栏则开始来看大数据的三驾马车中最后一个。 通过前面我们对于GFS和MapReduce论文实现的了解,我们知道GFS在数…...

Python创建FastApi项目模板

1. 项目结构规范 myproject/ ├── app/ │ ├── core/ # 核心配置 │ │ ├── config.py # 环境配置 │ │ └── security.py # 安全配置 │ ├── routers/ # 路由模块 │ │ └── users.py # 用户路由 │ ├…...

TCNE 网络安全

一.概况 CTF(Capture The Flag)在网络安全领域中指的是网络技术人员之间进行技术竞技的一种比赛形式,它起源于1996年的DEFCON全球黑客大会,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式,现已成为全球范围网…...

车规MCU处理器选择Cortex-M7还是Cortex-R52?

车规mcu处理器选择Cortex-M7还是Cortex-R52?跟随小编从具体应用场景、安全等级(ASIL)、性能、成本进行分析吧。 01安全等级需求 ASIL-D(如刹车、转向)→ 必选R52。R52原生支持ASIL-D,硬件级错误检测&#…...

什么是计算机中的 “终端”?

在我们初学编程的时候,会遇到一个很重要的概念 ——终端。那它到底是什么呢? 在计算机领域,终端就像是我们和计算机进行对话的 “窗口”。我们可以在这个窗口里,用一些特定的命令来告诉计算机该做什么。比如,让计算机…...

LeetCode刷题---字符串---819

最常见的单词 819. 最常见的单词 - 力扣(LeetCode) 题目: 给你一个字符串 paragraph 和一个表示禁用词的字符串数组 banned ,返回出现频率最高的非禁用词。题目数据 保证 至少存在一个非禁用词,且答案 唯一 。 par…...

SSH IBM AIX服务器相关指标解读

(一)ZPU使用率 含义 在IBM AIX服务器中,ZPU使用率反映了特定处理单元(ZPU,假设是某种自定义或特定环境下的处理单元)的资源利用程度。它表示ZPU在一段时间内处于忙碌状态执行任务的时间比例。例如&#xff…...

Wireshark TS | 再谈虚假的 TCP Spurious Retransmission

前言 在之前的《虚假的 TCP Spurious Retransmission》文章中曾提到一个错误判断为 TCP Spurious Retransmission,实际为 TCP Out-Of-Order 的案例,本次继续探讨一个虚假的 TCP Spurious Retransmission 案例。 问题背景 TCP Spurious Retransmission…...

基于kafka、celery的日志收集报警项目

项目环境:centOS7.9 mariadb5.6 celery5.0 kafka3.6.1 项目时间:2025年1月 项目描述:这个项目搭建了一个基于 Nginx 和 Flask 的 Web 集群,使用 Filebeat 将 Nginx 的访问日志发送到 Kafka 集群。通过 Python 消费者程序解析日志…...

QML使用ChartView绘制饼状图

一、工程配置 首先修改CMakeLists.txt,按下图修改: find_package(Qt6 6.4 REQUIRED COMPONENTS Quick Widgets) PRIVATEtarget_link_libraries(appuntitledPRIVATE Qt6::QuickPRIVATE Qt6::Widgets )其次修改main.cpp,按下图修改&#xff…...

头歌实验--面向对象程序设计

目录 实验五 类的继承与派生 第1关:简易商品系统 任务描述 答案代码 第2关:公司支出计算 任务描述 答案代码 第3关:棱柱体问题 任务描述 答案代码 实验五 类的继承与派生 第1关:简易商品系统 任务描述 答案代码 #incl…...

DeepSeek-R1 蒸馏 Qwen 和 Llama 架构 企业级RAG知识库

“DeepSeek-R1的输出,蒸馏了6个小模型”意思是利用DeepSeek-R1这个大模型的输出结果,通过知识蒸馏技术训练出6个参数规模较小的模型,以下是具体解释: - **知识蒸馏技术原理**:知识蒸馏是一种模型压缩技术,核…...

App UI自动化--Appium学习--第二篇

如果第一篇在运行代码的时候出现问题,建议参考我的上一篇文章解决。 1、APP界面信息获取 adb logcat|grep -i displayed代码含义是获取当前应用的包名和界面名。 根据日志信息修改代码当中的包名和界面名,就可以跳转对应的界面。 2、界面元素获取 所…...

XML Group端口详解

在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

c++ 面试题(1)-----深度优先搜索(DFS)实现

操作系统&#xff1a;ubuntu22.04 IDE:Visual Studio Code 编程语言&#xff1a;C11 题目描述 地上有一个 m 行 n 列的方格&#xff0c;从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子&#xff0c;但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列&#xff0c;以便知晓哪些列包含有价值的数据&#xff0c;…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板&#xff0c;就像一个模具&#xff0c;里面可以将不同类型的材料做成一个形状&#xff0c;其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式&#xff1a;templa…...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案

引言 在分布式系统的事务处理中&#xff0c;如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议&#xff08;2PC&#xff09;通过准备阶段与提交阶段的协调机制&#xff0c;以同步决策模式确保事务原子性。其改进版本三阶段提交协议&#xff08;3PC&#xf…...