Redis --- 安装教程

Redis--- 特性,使用场景,安装

  • 安装教程
    • 在Ubuntu下安装
    • 在Centos7.6下安装Redis5
  • 特性
    • 在内存中存储数据
    • 可编程的
    • 扩展能力
    • 持久化
    • 集群
    • 高可用
    • 快速
  • 应用场景
    • 实时数据存储
    • 作为缓存或者Session存储
    • 消息队列

安装教程

🚀安装之前切换到root用户。

在Ubuntu下安装

1.安装

apt install redis //Ubuntu下下载后默认启动了redis

2.修改配置文件

vim /etc/redis/redis.conf
bind 0.0.0.0 ::1  //修改bind后的内容
protected-mode no //保护模式改为no

3.重启服务器

service redis-server restart

在Centos7.6下安装Redis5

1.安装scl源

yum install centos-release-scl-rh

2.安装Redis5

yum install rh-redis5-redis 

3.对可执行程序做软连接

cd /usr/bin
ln -s /opt/rh/rh-redis5/root/usr/bin/redis-server ./redis-server
ln -s /opt/rh/rh-redis5/root/usr/bin/redis-sentinel ./redis-sentinel
ln -s /opt/rh/rh-redis5/root/usr/bin/redis-cli ./redis-cli

4.对配置文件做软连接

cd /etc/
ln -s /etc/opt/rh/rh-redis5/ ./redis

5.修改配置文件

bind 0.0.0.0 #修改ip
protected-mode no #关闭保护模式
daemonize yes #启动守护进程

🚀设置工作目录

mkdir -p /var/lib/redis  //创建一个新的目录
dir /var/lib/redis       //修改配置文件中dir 后面的内容

🚀设置日志目录

mkdir -p /var/log/redis/  #创建新的日志目录
logfile /var/log/redis/redis-server.log #修改日志文件的路径

6.启动redis

redis-server /etc/redis/redis.conf

在这里插入图片描述
7.终止Redis

kill redis的pid

在这里插入图片描述

特性

在内存中存储数据

🚀redis是将数据存储在内存中的数据结构中的,像MySQL这样的主要通过"表"的方式来存储组织数据的关系型数据库。Redis主要是通过"键值对"的方式来存储组织数据的非关系型数据库。

可编程的

🚀针对Redis的操作,可以通过使用简单的交互式命令进行操作。也可以通过一些脚本的方式,批量执行一些操作(可以带有一些逻辑)。

扩展能力

🚀在Redis原有的基础上进行扩展,Redis提供了一组API,可通过C/C++,Rust编写Redis扩展(本质上是一个动态链接库)。

持久化

🚀Redis是把数据存储在内存上的,为了是更快速的访问。Redis也会把数据存储在硬盘上,内存为主,磁盘为辅。(相当于对内存数据的备份,如果Redis重启了,就会在重启时加载硬盘中的备份数据,使Redis的内存恢复到重启前的状态)

集群

🚀Redis作为分布式系统中的一个中间件,能够支持集群是很关键的。一个Redis能存储的数据是有限的,那么就可以引入多个主机,部署多个Redis结点,每个Redis存储数据的一部分。

高可用

🚀Redis自身也是支持主从这种结构的,从结点就相当于主节点的备份。

快速

🚀Redis数据存储在内存中,就比访问硬盘的数据库要快。
🚀Redis的核心功能都是比较简单的逻辑。核心功能都是操作内存中的数据结构。
🚀从网络角度上,Redis使用了IO多路转接的方式(epoll)。
🚀Redis使用的是单线程模型,这样的单线程模型,就减少了不必要的线程之间的竞争开销。(多线程能提高效率的前提:CPU密集型任务,使用多个线程可以充分的利用CPU多核资源,但是Redis的核心人物,主要就是操作内存中的数据结构,不会消耗太多CPU)。

应用场景

实时数据存储

🚀将Redis当作数据库使用,对于实时性比较高的场景,延迟比较低适合使用Redis。

作为缓存或者Session存储

🚀将热点数据拿出来存储在Redis中(20%的数据满足80%的请求–二八原则)。从Redis中拿数据比从MySQL这样的数据库中拿数据要快很多的。

🚀通常来说Session是存储在应用服务器的内存中的,但是在分布式系统尤其是使用了负载均衡的架构下,可能同一个用户的多次请求被分发到了不同的应用服务器上,就会导致用户重新认证。可以将会话数据单拎出来放在一个Redis服务器上,所有的应用服务器都将Session存储在这个Redis中。(应用程序重启,会话不会丢失)

消息队列

🚀此处的消息队列指的不是Linux进程间通信的那个消息队列。这里指的是一个消息队列服务器,基于这个可以实现一个网络版本的生产者消费者模型。

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

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

相关文章

docker 基本用法-操作镜像

1.下载镜像 docker search centos #默认从 Docker Hub 中搜索镜像 访问 dockerhub&#xff1a;https://registry.hub.docker.com docker pull centos 拉取镜像 如果不能拉取 方法 1.需要配置配置镜像加速器 tee /etc/docker/daemon.json << EOF {"registry-mirro…

1688拍立淘接口,按图搜索商品接口,图片识别接口,图片上传搜索接口,图片搜索API接口,以图搜货接口

1688拍立淘接口的作用是让用户通过上传图片或输入图片链接的方式&#xff0c;调用1688的图片搜索引擎&#xff0c;返回与该图片相关的所有1688商品。 使用该接口需要先获取一个key和secret&#xff0c;然后参考API文档里的接入方式和示例&#xff0c;查看测试工具是否有需要的…

腾讯云创建了jenkins容器,但无法访问

1、首先&#xff0c;查看本机能不能ping通你的腾讯云服务器 如果ping的通那就下一步 2、查看腾讯云服务器的防火墙关了没&#xff0c;没关关掉、 firewall-cmd --state not running 3、那就在云服务器的控制台开放端口

某马机房预约系统 C++项目(二) 完结

8.4、查看机房 8.4.1、添加机房信息 根据案例&#xff0c;我们还是先在computerRoom.txt中直接添加点数据 //几机房 机器数量 1 20 2 50 3 1008.4.2、机房类创建 ​ 同样我们在头文件下新建一个computerRoom.h文件 添加如下代码&#xff1a; #pragma once #include<i…

工具篇之Axure RP 10的使用

引言 最近在学习原型图&#xff0c;针对画原型图的工具&#xff0c;反复对比墨刀、Axure、xiaopiu后&#xff0c;最终选择Axure。 接下来&#xff0c;我便从Axure RP 10的下载、安装、中文字体、授权等几个方面&#xff0c;来介绍Axure。 一、背景 Axure是一款强大的原型设计…

GO学习之 goroutine的调度原理

GO系列 1、GO学习之Hello World 2、GO学习之入门语法 3、GO学习之切片操作 4、GO学习之 Map 操作 5、GO学习之 结构体 操作 6、GO学习之 通道(Channel) 7、GO学习之 多线程(goroutine) 8、GO学习之 函数(Function) 9、GO学习之 接口(Interface) 10、GO学习之 网络通信(Net/Htt…

Zebec Protocol 薪酬支付工具 WageLink 上线,掀新一轮薪酬支付浪潮

Zebec Protocol 正在从多个方面推动流支付的应用&#xff0c;除了作为一种全新的支付手段来对支付领域进行重塑外&#xff0c;其也在以流支付体系为基础&#xff0c;不断地向薪酬发放领域深度的拓展。 在今年早些时候&#xff0c;Zebec Protocol 通过美国投资机构 Payroll Grow…

【FISCO-BCOS】十八、使用docker部署区块链

目录 前言&#xff1a; docker&#xff1a; 一、安装docker docker部署区块链&#xff1a; 一、 搭建单群组4节点区块链 二、启动区块链 三、检查容器 四. 查看节点 前言&#xff1a; 关于FISCOBCOS部署区块链的方式&#xff0c;我们已经学习过了很多种&#xff0c;如多群组部…

现代C++、STL、QTL的使用

0、现代C中最重要的是&#xff1a; 右值引用&&、移动语义std::move、完美转发std::forward、万能引用T&& void Func(int& x) { cout << "左值引用" << endl; } void Func(const int& x) { cout << "const左值引用…

软件测试之【单元测试、系统测试、集成测试】

一、单元测试的概念 单元测试&#xff08;Unit Testing&#xff09;是对软件基本组成单元进行的测试&#xff0c;如函数&#xff08;function或procedure&#xff09;或一个类的方法&#xff08;method&#xff09;。当然这里的基本单元不仅仅指的是一个函数或者方法&#xff…

volatile-可见性案例详解

6.3 volatile特性 6.3.1 保证可见性 保证不同线程对某个变量完成操作后结果及时可见&#xff0c;即该共享变量一旦改变所有线程立即可见 不加volatile&#xff0c;没有可见性&#xff0c;程序无法停止 加了volatile&#xff0c;保证可见性&#xff0c;程序可以停止 public…

RHCE---Shell基础 2

文章目录 目录 文章目录 前言 一.变量 概述 定义 自定义变量 环境变量 概述&#xff1a; 定义环境变量&#xff1a; 位置变量 "$*"会把所有位置参数当成一个整体&#xff08;或者说当成一个单词 变量的赋值和作用域 read 命令 变量和引号 变量的作用域 变…

基于拦截器Interceptor实现简易权限控制及行为记录功能

一、业务需求 使用拦截器(Interceptor)&#xff0c;实现Controller中方法的权限控制&#xff0c;并记录访问行为。要求仅在Controller方法上加注解&#xff0c;就可以实现权限控制。具体为&#xff1a; 1、拦截未登录用户的访问&#xff1b; 2、拦截不具有权限用户的访问&#…

Git教程

文章目录 Git 介绍GIt历史Git 安装环境配置工作区、缓存区和仓库区&#xff08;版本库&#xff09;工作区(工作目录)暂存区仓库区git工作目录下文件的装填 Git 生成公钥及添加到gitlab或Gerrit上Git常用命令git stautsgit statu -sgit addgit commitgit reset1. git reset --ha…

Post-Process1-水下

一、新建第三人称游戏项目&#xff0c;我这里选择C&#xff0c;你也可以选择Blueprint。 新建一个Level&#xff0c;命名为DemoUnderWater 保存一下&#xff0c;命名为DownUnderWater 添加水插件 选择Yes 勾选Show Engine Content和Show Plugin Content&#xff0c;在左侧可以看…

图(graph)的遍历----深度优先(DFS)遍历

目录 前言 深度优先遍历&#xff08;DFS&#xff09; 1.基本概念 2.算法思想 3.二叉树的深度优先遍历&#xff08;例子&#xff09; 图的深度优先遍历 1.图(graph)邻接矩阵的深度优先遍历 思路分析 代码实现 2.图(graph)邻接表的深度优先遍历 思路分析 代码实现 递…

【Web】| CSS Float (浮动)的使用方法

Float&#xff08;浮动&#xff09;概念 CSS的Float&#xff08;浮动&#xff09;&#xff0c;会使得元素向左或者向右移动&#xff0c;其它周围元素也会重新排列。 Float浮动&#xff0c;往往是用于图像&#xff0c;但它的布局一样非常有效。 元素如何浮动 元素的水平方向…

【MySQL架构篇】MySQL字符集、大小写规范及默认数据库

文章目录 1. 字符集与字符集比较规则2. 大小写规范3. 默认数据库4. 与文件系统相关 1. 字符集与字符集比较规则 MySQL有4个级别的字符集和比较规则&#xff0c;分别是 服务器级别数据库级别表级别列级别 当创建对应表或列未指定字符集时&#xff0c;默认会取其上一级别的字符…

MySQL中的表操作,配置文件,储存引擎,数据类型

MySQL中的表操作 1 查库&#xff08;已密码登陆mysql&#xff09; show databases; 2 添加库 create database t1; 3 表操作 1选定操作库 use t1 2在库里添加表格式 create table t1(id int, name varchar(32), gender varchar(32),age int); 3往表里添加具体元素 insert…

OpenCV 笔记(2):图像的属性以及像素相关的操作

Part11. 图像的属性 11.1 Mat 的主要属性 在前文中&#xff0c;我们大致了解了 Mat 的基本结构以及它的创建与赋值。接下来我们通过一个例子&#xff0c;来看看 Mat 所包含的常用属性。 先创建一个 3*4 的四通道的矩阵&#xff0c;并打印出其相关的属性&#xff0c;稍后会详细…