Redis(Redis配置和订阅发布)

文章目录

    • 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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

书生·浦语大模型实战营之XTuner多模态训练与测试

书生浦语大模型实战营之XTuner多模态训练与测试 目录 XTuner多模态训练与测试给LLM装上电子眼:多模态LLM原理简介文本单模态文本图像多模态 电子眼:LLaVA方案简介LLaVA训练阶段示意图LLaVA测试阶段示意图 项目实践环境准备XTuner安装概述Pretrain阶段Fi…

NVIDIA_SMI has failed because it couldn’t communicate with the NVIDIA driver

参考:https://www.zhihu.com/question/474222642/answer/3127013936 https://blog.csdn.net/ZhouDevin/article/details/128265656 nvidia-smi查看报错,nvcc正常 1)查看nvidia版本 ls /usr/src | grep nvidia nvidia-550.78 2)…

无线通信基础

这里写目录标题 通信概述什么是无线通信无线通信电磁波 通信概述 什么是无线通信 无线通信 : 是指利用电磁波信号可以在自由空间中传播的特性进行信息交换的一种通信方式 无线通信的关键技术包括调制技术、解调技术、信道编码技术、信号处理技术、天线技术等。这些技术的不断…

【mobx-入门与思考】

介绍 mobx 是 nodejs生态中的框架, 主要用于做状态管理,可以监控变量状态的变化。 nodejs中除了mobx,还有个redux,也是做状态管理的,都是比较成熟的框架,二者的选择可以参考 【nodejs状态管理: Redux VS M…

太原理工大学Python数据分析原理与应用(课外考题:8~11章)

这部分大概只考10分,且大部分出在选择题,填空最多一两个 (仅供参考) 第十章 (理解概念为主,无需看推导过程) 第十一章

1-1ARM开发环境搭建(GD32)

1:安装MDK最好是5.27以及以上版本,避免后续学习中出现相关错误 2:安装芯片支持包 双击安装即可,也可以是默认路径,也可以自己更改路径 3:安装jlink下载器驱动(下载调试器) 具体安装步骤如下所示…

Java 线程池 ( Thread Pool )的简单介绍

想象一下,你正指挥着一支超级英雄团队,面对蜂拥而至的敌人(任务),不是每次都召唤新英雄(创建线程),而是精心调配现有成员,高效应对。这就是Java线程池的魔力,…

重装win11系统后找不到WiFi

由于电脑崩溃重装了系统,win11,装完之后WiFi图标不见了且网络适配器根本没有无线网络选项。 右键电脑》管理》网络适配器。 在刚装好系统时候并没有前两项,查了很多资料,比如 关机14s 重启,还有通过服务配置 WLAN AutoConfig 都…

从0到1提审苹果商店(appstore)上线一款新APP

本篇主要复盘和介绍一款APP如何从0到1上线到苹果商店,将我自己项目遇到的坑跟大家分享,希望能为同样做开发或者运营的你提供经验,少走弯路。 如果你是24年1月1日之后开始首次提审APP,还需要先将自己的APP在工信部备案,苹果后台增加了工信部备案号的填写,备案方法和经验如…

如何去官网下载windows10操作系统iso镜像

文章目录 一、先从微软中国官网https://www.microsoft.com/zh-cn/进去二、然后按图示一步步点进去三、点击下载工具这个工具会帮你生成windows操作系统iso文件四、下载好后一步步按图示要求成功操作一、先从微软中国官网https://www.microsoft.com/zh-cn/进去 二、然后按图示一…

JAVA面向对象高级部分

内部类 内部类的四种形式 内部类概述、成员内部类 代码示例 创建对象的格式 通过对象名访问内部类方法 若内外部类的成员变量名冲突,如何在内部类分别访问外部成员变量。 总结 静态内部类 代码示例 访问静态内部类的方法 不能在静态内部类中访问实例成员变量 …

视频素材库在哪里找免费手机版?8个可以用手机浏览的素材网

在视觉内容占据主导地位的今天,合适的视频素材可以大大提升项目的吸引力和效果。以下列出的视频素材网站为广告制作者、社交媒体策略师及电影制作人提供了从传统到现代风格的各种视频素材选择,满足不同的创作需求。 1. 蛙学府(中国&#xff…

展开说说:Android线程池解析

何谓线程池?本人理解是存放和管理线程的一个容器。 线程池存在的意义是什么? 第一:前面博客提到过创建和销毁线程的操作本身是有性能开销的,如果把使用的线程对象存起来下次用的时候直接取出来用就省去了一次创建和销毁的成本&a…

Scroll生态项目Penpad,再获Presto Labs的投资

Penpad是Scroll生态的LaunchPad平台,其整计划像收益聚合器以及RWA等功能于一体的综合性Web3平台拓展,该平台在近期频获资本市场关注,并获得了多个知名投资者/投资机构的支持。 截止到本文发布前,Penpad已经获得了包括Scroll联合创…

基于vue.js+thymeleaf模板引擎+ajax的注册登陆简洁模板(含从零到一详细介绍)

文章目录 前言1、数据库准备2、工具类与相关基类使用2.1、工具类2.2、相关基类 3、web包目录说明4、注册功能设计(本文核心部分)4.1、注册页面设计4.2、注册逻辑设计 5、登陆功能设计5.1、登陆页面设计5.2、登陆逻辑设计 6、运行效果图 前言 大多数的网…

(MATLAB)安装指南

参考链接:MATLAB2019a安装教程(避坑版)

智能健康管理系统的一次新体验

智能健康管理系统是一个集成了多方面数据资源,并配合人工智能算法的健康管理系统。该系统的应用涉及多个领域,包括医学、科学、生态和医疗保健等。其服务对象包括健康人群、亚健康人群和疾病人群,旨在通过病因预防、临床前期预防和临床预防三…

Autosar PNC网络管理配置-UserData的使用

文章目录 前言ComComSignalComIPdu CanNmSignal Mapping总结 前言 之前配置的网络管理报文中的data都由ComM管理,后面客户新增了需求,最后两个byte需要发送Wakeup Reason,本文记录一下相关配置的修改 Com ComSignal 之前配置的PN_TX&…

后仿真中的关于延时问题(物理特性角度)

大家都知道,后仿真讲究仿真时序。那么,在网表阶段,接触到后仿延时问题。今天总结一下。 一 延时概念和分类 1.1 分布式延迟(Distributed Delays) 一般用来指定模块内部信号通过逻辑单元或者线网耗费的时间。 1.2 模…

Linux进程通信-信号

信号概念 信号是 Linux 进程间通信的最古老的方式之一,是事件发生时对进程的通知机制,有时也称之为软件中断,它是在软件层次上对中断机制的一种模拟,是一种异步通信的方式。信号 可以导致一个正在运行的进程被另一个正在运行的异…