Redis(Redis配置和订阅发布)

news2024/10/5 3:08:31

文章目录

    • 1.Redis配置
        • 1.网络配置
          • 1.配置文件位置 /etc/redis.conf
          • 2.bind(注销支持远程访问)
            • 1.默认情况bind = 127.0.0.1 只能接受本机的访问
            • 2.首先编辑配置文件
            • 3.进入命令模式输入/bind定位,输入n查找下一个,shift + n查找上一个,找到bind注释掉
            • 4.重启redis,别忘记指定配置文件
            • 5.查看进程的情况,6379前面变成星号了,表示看,可以接受外部连接
            • 6.如果没有变成星号,就需要先杀死该进程然后在启动一下
          • 3.protected-mode(设置no支持远程访问)
          • 4.port(可以修改启动端口)
          • 5.timeout(一个空闲的客户端维持多少秒会超时,默认0不会超时)
          • 6.tcp-keepalive(对访问客户端的一种心跳检测, 默认300,建议设置60)
        • 2.通用配置
          • 1.daemonize(是否以守护进程启动)
            • 1.介绍
            • 2.设置为no测试
            • 3.保存之后杀死一下进程然后再重启,就会发现此时整个窗口都被redis占用
            • 4.ctrl + c退出,则服务也关闭了
          • 2.pidfile(记录了该进程的进程号)
            • 1.查看pidfile的位置
            • 2.看看
          • 3.loglevel(日志级别默认notice在测试时可以使用debug)
          • 4.logfile(日志文件位置,默认为空即不保留日志,可自定义日志文件位置)
            • 1.找到logfile位置
            • 2.设置日志文件位置
            • 3.创建日志文件
            • 4.重启redis,查看日志文件
          • 5.databases(设置redis共有几个库默认16)
        • 3.安全设置
          • 1.requirepass (设置密码)
            • 1.配置文件找到对应位置
            • 2.设置密码为root
            • 3.重启redis
            • 4.再次连接redis进行操作,使用auth进行登录,用户名用默认的直接输入密码root
            • 5.可以使用acl whoami来查看当前用户为default
            • 6.使用acl list可以查看所有用户
          • 2.使用config get命令可以获取配置信息
        • 4.限制配置
          • 1.maxclients(设置redis最大客户端连接数),如果超过连接则会报错Connection reset by peer
          • 2.maxmemory(最大内存)
            • 1.基本介绍
            • 2.所在位置
          • 3.maxmemory-policy(最大内存策略)
          • 4.maxmemory-samples(样本数量,一般设置3到7的数字,数值越小样本越不准确,但性能消耗越小)
    • 2.发布订阅
        • 1.发布和订阅是什么?
          • 1.示意图
          • 2.如何理解发布和订阅模式
            • 1.任务队列
          • 2.从生活中理解
        • 2.发布订阅分类
          • 1.一个发布者,多个订阅者
          • 2.多个发布者,一个订阅者
          • 3.多个发布者,多个订阅者
        • 3.命令行实现发布和订阅
          • 1.命令介绍
          • 2.一个发布者,多个订阅者
            • 1.三个连接都进入redis
            • 2.让2和3订阅频道chanenl1和chanenl2
            • 3.让1发布消息到chanenl1
          • 3.多个发布者,一个订阅者
            • 1.让1和2发布
            • 2.让3订阅(刚才订阅了)
          • 4.多个发布者,多个订阅者
            • 1.让3,4订阅
            • 2.让1,2发布
            • 3.最终3,4都接收到了

1.Redis配置

1.网络配置
1.配置文件位置 /etc/redis.conf
2.bind(注销支持远程访问)
1.默认情况bind = 127.0.0.1 只能接受本机的访问
2.首先编辑配置文件
vim /etc/redis.conf

image-20240429113924283

3.进入命令模式输入/bind定位,输入n查找下一个,shift + n查找上一个,找到bind注释掉

image-20240429114040993

4.重启redis,别忘记指定配置文件
redis-server /etc/redis.conf

image-20240429114202757

5.查看进程的情况,6379前面变成星号了,表示看,可以接受外部连接

image-20240429114820752

6.如果没有变成星号,就需要先杀死该进程然后在启动一下

image-20240429115010845

3.protected-mode(设置no支持远程访问)

image-20240429115616881

4.port(可以修改启动端口)

image-20240429115731835

5.timeout(一个空闲的客户端维持多少秒会超时,默认0不会超时)

image-20240429130714769

6.tcp-keepalive(对访问客户端的一种心跳检测, 默认300,建议设置60)

image-20240429131100730

2.通用配置
1.daemonize(是否以守护进程启动)
1.介绍

image-20240429131303512

2.设置为no测试

image-20240429131404508

3.保存之后杀死一下进程然后再重启,就会发现此时整个窗口都被redis占用

image-20240429132219182

4.ctrl + c退出,则服务也关闭了

image-20240429132302574

2.pidfile(记录了该进程的进程号)
1.查看pidfile的位置

image-20240429132629382

2.看看

image-20240429132716188

3.loglevel(日志级别默认notice在测试时可以使用debug)

image-20240429132909405

4.logfile(日志文件位置,默认为空即不保留日志,可自定义日志文件位置)
1.找到logfile位置

image-20240429133456181

2.设置日志文件位置

image-20240429133602109

3.创建日志文件

image-20240429133807541

4.重启redis,查看日志文件
5.databases(设置redis共有几个库默认16)

image-20240429134443668

3.安全设置
1.requirepass (设置密码)
1.配置文件找到对应位置

image-20240429134811737

2.设置密码为root

image-20240429134840493

3.重启redis

image-20240429134955436

4.再次连接redis进行操作,使用auth进行登录,用户名用默认的直接输入密码root

image-20240429135148895

5.可以使用acl whoami来查看当前用户为default

image-20240429135315627

6.使用acl list可以查看所有用户

image-20240429135404677

2.使用config get命令可以获取配置信息

image-20240429143110884

4.限制配置
1.maxclients(设置redis最大客户端连接数),如果超过连接则会报错Connection reset by peer

image-20240429143515488

2.maxmemory(最大内存)
1.基本介绍

image-20240429144115441

2.所在位置

image-20240429144326342

3.maxmemory-policy(最大内存策略)

image-20240429144947472

4.maxmemory-samples(样本数量,一般设置3到7的数字,数值越小样本越不准确,但性能消耗越小)

image-20240429145343135

2.发布订阅

1.发布和订阅是什么?
1.示意图

image-20240429145722602

image-20240429145941693

2.如何理解发布和订阅模式
1.任务队列

image-20240429150238877

2.从生活中理解

image-20240429150311100

2.发布订阅分类
1.一个发布者,多个订阅者

image-20240429150426023

2.多个发布者,一个订阅者

image-20240429150544102

3.多个发布者,多个订阅者

image-20240429150639781

3.命令行实现发布和订阅
1.命令介绍

image-20240429151515451

image-20240429151521552

2.一个发布者,多个订阅者
1.三个连接都进入redis

image-20240429152318113

2.让2和3订阅频道chanenl1和chanenl2
subscribe chanenl1 chanenl2

image-20240429152500148

3.让1发布消息到chanenl1
publish chanenl1 hello,world

image-20240429152902644

3.多个发布者,一个订阅者
1.让1和2发布

image-20240429153151172

2.让3订阅(刚才订阅了)

image-20240429153237433

4.多个发布者,多个订阅者
1.让3,4订阅

image-20240429153636146

2.让1,2发布

image-20240429153656779

3.最终3,4都接收到了

image-20240429153722727

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

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

相关文章

STM32F407VET6 学习笔记2:定时器、串口、自定义串口打印函数

今日继续学习使用嘉立创购买的 立创梁山派天空星,芯片是 STM32F407VET6 因为已经有学习基础了,所以学习进度十分快,这次也是直接一块学习配置定时器与串口了,文章也愈来愈对基础的解释越来越少了...... 文章提供测试代码讲解、完…

springboot项目组合定时器schedule注解实现定时任务

springboot项目组合定时器schedule注解实现定时任务! 创建好springboot项目后,需要在启动类上增加注解开启定时器任务 下图所示: 增加这个注解,启动项目, package com.example.scheduledemo.util;import org.springf…

Baidu Comate——您的智能编码伙伴

文章目录 1.Baidu Comate智能编码助手简介2.Baidu Comate安装使用3.查看Comate插件功能4.Baidu Comate基础功能介绍✨注释生成代码✨实时续写✨函数注释✨行间注释✨代码解释✨单元测试生成✨代码优化✨技术问答 5.使用体验结语 1.Baidu Comate智能编码助手简介 ✨Baidu Comat…

ASP.NET MVC企业级程序设计 (入住退房,删除)

目录 效果图 实现过程 控制器代码 DAL BLL Index 效果图 实现过程 控制器代码 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc;namespace MvcApplication1.Controllers {public class HomeController …

python环境下labelImg图片标注工具的使用

labelimg GitHub地址 python环境下labelImg图片标注工具的使用 1. 写在开头2. 如何使用2.1安装2.2 启动2.2.1 先启动后设置标注的目录2.2.2 指定标注的目录和预设置的标签 2.3 设置自动保存和显示类别。2.4 保存文件类型2.5 [快捷键](https://github.com/HumanSignal/labelImg…

矩阵快速幂

要想知道矩阵快速幂,我们先了解一下什么叫快速幂和矩阵乘法 一、快速幂 快速幂算法是用来快速计算指数表达式的值的,例如 210000000,普通的计算方法 2*2*2*2…10000000次,如果一个数字的计算都要计算那么多次的话,那么这个程序一…

c++多线程2小时速成

简介 c多线程基础需要掌握这三个标准库的使用&#xff1a;std::thread,std::mutex, andstd::async。 1. Hello, world #include <iostream> #include <thread>void hello() { std::cout << "Hello Concurrent World!\n"; }int main() {std::th…

5.合并两个有序数组

文章目录 题目简介题目解答解法一 &#xff1a;合并后排序解法二&#xff1a;双指针排序 题目链接 大家好&#xff0c;我是晓星航。今天为大家带来的是 合并两个有序数组 相关的讲解&#xff01;&#x1f600; 题目简介 题目解答 解法一 &#xff1a;合并后排序 假设我们要合…

【C++】从零开始认识多态

送给大家一句话&#xff1a; 一个犹豫不决的灵魂&#xff0c;奋起抗击无穷的忧患&#xff0c;而内心又矛盾重重&#xff0c;真实生活就是如此。 ​​​​ – 詹姆斯・乔伊斯 《尤利西斯》 _φ(*&#xffe3;ω&#xffe3;)&#xff89;_φ(*&#xffe3;ω&#xffe3;)&…

期权买方要保证金吗?期权交易保证金怎么计算?

今天期权懂带你了解期权买方要保证金吗&#xff1f;期权交易保证金怎么计算&#xff1f;期权保证金其实就是你在购买期权合约时&#xff0c;作为卖方要付出的那一小笔钱。简单说&#xff0c;就是为了防止你违约&#xff0c;给交易双方一个保障的“小押金”。 期权买方要保证金吗…

软考中级-软件设计师(八)算法设计与分析 考点最精简

一、算法设计与分析的基本概念 1.1算法 算法&#xff08;Algorithm&#xff09;是对特定问题求解步骤的一种描述&#xff0c;有5个重要特性&#xff1a; 有穷性&#xff1a;一个算法必须总是在执行又穷步骤后结束&#xff0c;且每一步都可在又穷时间内完成 确定性算法中每一…

如何做好一个活动策划?

活动策划的关键要素是什么&#xff1f; 首先&#xff0c;要明确一个概念:做活动就是走钢丝&#xff0c;没有保险的高空走钢丝!因为&#xff0c;活动没有“彩排”&#xff0c;只有现场"直播”! 无论什么类型的活动&#xff0c;人数是50人还是2000人&#xff0c;也不论预算…

Parts2Whole革新:多参照图定制人像,创新自定义肖像生成框架!

DeepVisionary 每日深度学习前沿科技推送&顶会论文分享&#xff0c;与你一起了解前沿深度学习信息&#xff01; Parts2Whole革新&#xff1a;多参照图定制人像&#xff0c;创新自定义肖像生成框架&#xff01; 引言&#xff1a;探索多条件人像生成的新篇章 在数字内容创作…

用户管理中心——数据库设计用户注册逻辑设计

用户管理中心——数据库设计&用户注册逻辑设计 规整项目目录1. 数据库自动生成器的使用实现基本的数据库操作&#xff08;操作user表&#xff09; 2. 注册逻辑的设计(1) 写注册逻辑(2) 实现(3) 测试代码 3. 遇到的问题 规整项目目录 utils–存放工具类&#xff0c;比如加密…

贪心算法应用例题

最优装载问题 #include <stdio.h> #include <algorithm>//排序int main() {int data[] { 8,20,5,80,3,420,14,330,70 };//物体重量int max 500;//船容最大总重量int count sizeof(data) / sizeof(data[0]);//物体数量std::sort(data, data count);//排序,排完数…

OpenHarmony 实战开发—— refreshlayout 组件开发学习指南~

1. RefreshLayout_harmonyos 功能介绍 1.1. 组件介绍&#xff1a; RefreshLayout_harmonyos 是一款下拉刷新组件 1.2. 手机模拟器上运行效果&#xff1a; 2. RefreshLayout_harmonyos 使用方法 2.1 在目录 build.gradle 下 implementation project(":refreshlayout_ha…

【YoloDeployCsharp】基于.NET Framework的YOLO深度学习模型部署测试平台

YoloDeployCsharp|基于.NET Framework的YOLO深度学习模型部署测试平台 1. 项目介绍2. 支持模型3. 时间测试4. 总结 1. 项目介绍 基于.NET Framework 4.8 开发的深度学习模型部署测试平台&#xff0c;提供了YOLO框架的主流系列模型&#xff0c;包括YOLOv8~v9&#xff0c;以及其系…

Linux 手动部署JDK21 环境

1、下载包&#xff08;我下载的是tar) https://www.oracle.com/cn/java/technologies/downloads/#java21 完成后进行上传 2、检查已有JDK&#xff0c;并删除&#xff08;我原有是jdk8&#xff09; rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps3、清理掉 profile中的j…

PXE 批量安装部署

目录 一、PEX批量部署优点 二、PXE&#xff1a;预启动执行环境 三、搭建PXE远程服务器 要想全自动安装 接下来请看步骤&#xff1a; 一、PEX批量部署优点 规模化&#xff1a;同时装配多台服务器自动化&#xff1a;安装系统 配置各种服务远程实现&#xff1a;不需要光盘&…

代码随想录算法训练营DAY43|C++动态规划Part5|1049.最后一块石头的重量II、494.目标和、474.一和零

文章目录 1049.最后一块石头的重量II思路CPP代码 ⭐️494.目标和回溯算法抽象成01背包问题CPP代码本题总结 474.一和零思路CPP代码 1049.最后一块石头的重量II 力扣题目链接 文章链接&#xff1a;1049.最后一块石头的重量II 视频链接&#xff1a;这个背包最多能装多少&#xff…