这才是你想了解的Redis

这篇具有很好参考价值的文章主要介绍了这才是你想了解的Redis。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

文章简介
redis作为一个基于内存的数据结构存储系统,由于它的灵活性和可拓展性强,在我们日常开发中经常被用作数据库、缓存或者消息代理。本文就从Redis的基本部署使用说到Redis的集群、锁和消息对列

Redis基本使用

一、安装

下载地址:https://github.com/tporadowski/redis/releases
选择下载安装包或者安装程序
这才是你想了解的Redis
在安装目录下找到redis-server.exe运行即可启动Redis服务

二、Redis键命令

Redis键命令就是对已存储的键值对进行增删改查的命令

1、查询键

EXISTS key  //判断键是否存在
  • key存在,则返回1

  • key不存在,则返回0

KEYS pattern  //查找键
  • 用于按照指定的模式pattern 查找所有的key
  • KEYS * :表示匹配查找数据库中的所有key
  • kEYS r?dis :表示匹配 ?位置,任何一个字母,?仅代表任意一个字母,如:redis
  • kEYS r*dis:表示匹配 位置,任何零个、一个或多个字母、 代表零个或多个,如:rdis、redis、reedis
  • KEYS r[ae]dis :表示匹配radis 和 redis ,不会匹配别的,只会匹配这两种

2、修改键

RENAME key 新的键名  //修改键的名称
  • 将key 的名称修改成新的键名
  • 若key不存在,返回error
  • 若新键名存在,则覆盖

3、删除键

DEL [key...]  //删除一个或多个键
  • key若不存在,则忽略

三、Redis客户端

常用的Redis客户端有redis desktop managerAnother Redis Desktop ManagerRedisInsight,其中后面两个比较推荐,RedisInsight界面比较美观,但是美中不足的是没法模糊搜索。

四、SpringBoot整合Redis

依赖如下:

  <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-redis</artifactId>
      <version>2.7.9</version>
  </dependency>

  <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-pool2</artifactId>
      <version>2.11.1</version>
  </dependency>
  
  <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.11</version>
  </dependency>

application.yml配置

spring:
  redis:
    database: 0  # Redis数据库索引(默认为0)
    host: localhost # Redis服务器地址
    port: 6379  # Redis服务器连接端口
    password:   # Redis服务器连接密码(默认为空)
    lettuce:
      pool:
       max-active: 8  # 连接池最大连接数(使用负值表示没有限制) 默认 8
       max-wait: -1   # 连接池最大阻塞等待时间(使用负值表示没有限制) 默认 -1
       max-idle: 8    # 连接池中的最大空闲连接 默认 8
       min-idle: 0    # 连接池中的最小空闲连接 默认 0

Redis模式

Redis有单机模式主从模式哨兵模式集群模式

  • 单机模式:优点:操作简单、成本低、不需要同步数据;缺点:可靠性低,服务掉线没法及时补救。
  • 主从模式:优点:

1、Redis主从模式

在生产环境中,如果只使用一个Redis服务,在出现服务出现问题掉线时,等到问题修复重启,时间就拖得太长了。这时候如果是使用的主从模式,在主库挂掉后,直接让相同配置的从库接管,系统又能正常运行了。Redis主从模式配置如下:

  1. 在同一个Redis程序下建两份一样的配置文件,命名为master.confslave.conf
  2. 其中master.confport6379,则slave.conf中的port设置为6380 slaveof 127.0.0.1:6379
  3. 启动主从Redis
    查看运行情况
telnet localhost 6379 telnet localhost 6380
role:master
-------------
role:slave
master_host:127.0.0.1
master_port:6379

2、Redis哨兵模式(sentinel)

Redis主从模式虽然在主服务宕机后可以直接替换从服务,不过这需要手动操作,而使用哨兵模式则相当于有一个哨兵在帮你监控Redis服务,主库宕机后,会根据规则推选出一个从库来顶替主服务,从而实现系统正常运行。
这才是你想了解的Redis

  1. 下面配置三个Redis,一个主两个从,一个哨兵
mkdir redis-sentinel
cd redis-sentinel
cp redis/path/conf/redis.conf path/to/redis-sentinel/master.conf
cp redis/path/conf/redis.conf path/to/redis-sentinel/slave1.conf
cp redis/path/conf/redis.conf path/to/redis-sentinel/slave2.conf
touch sentinel.conf

  1. 设置主从
vim master.conf
port 63791

vim slave1.conf
port 63792
slaveof 127.0.0.1 63791

vim slave2.conf
port 63793
slaveof 127.0.0.1 63791

vim sentinel.conf
daemonize yes
port 26379
# 其中mastername为主节点名字,末尾的1表示在推举主节点的时候该端口在sentinel同意的情况下可升级为master
sentinel monitor mastername 127.0.0.1 63793 1   

  1. 启动Redis
redis-server path/to/redis-sentinel/master.conf
redis-server path/to/redis-sentinel/slave1.conf
redis-server path/to/redis-sentinel/slave2.conf

redis-server path/to/redis-sentinel/sentinel.conf --sentinel

Redis集群

前面的Redis哨兵模式虽然在主从模式的基础上加上了监控的哨兵,可以自动切换主节点,但是依然是单点Redis,依旧是向一个Redis写数据,从库做备份。在日常生产环境中,单点Redis并发有限,遇到数据量大的情况容易降低性能,这时候我们就需要一个在多节点之间共享数据的工具,那就是Redis cluster,也就是Redis集群。Redis 集群通过分区来提供一定程度的可用性,在实际环境中当某个节点宕机或者不可达的情况下继续处理命令。文章来源地址https://www.toymoban.com/news/detail-481517.html

  1. 根据Redis官方文档,因为至少需要三个主节点,所以我们需要启动至少六个Redis服务,配置如下
主:master1   从 slave1   slaveof master1
主:master2   从 slave2   slaveof master2
主:master3   从 slave3   slaveof master3


mkdir redis-cluster
cd redis-cluster
mkdir master1   到 slave3   6个文件夹
cp redis.conf 到 master1 ... slave3   
修改端口
分别配置3组主从关系

  1. 启动Redis集群
redis-6.2.6/src/redis-cli --cluster create 127.0.0.1:6371 127.0.0.1:6372 127.0.0.1:6373 127.0.0.1:6374 127.0.0.1:6375 127.0.0.1:6376 --cluster-replicas 1

到了这里,关于这才是你想了解的Redis的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • EDM营销过时了?不,这才是跨境电商成功的最佳工具

    根据最近的一项研究,电子邮件仍然是最具说服力的营销工具和沟通形式之一。虽然即时通讯等其他渠道正在扎根,但电子邮件仍然是影响最深远的商业交流形式。到2023年,每天发送和接收的电子邮件总数可能会超过333亿封。所以,如果您希望您的营销计划取得成功,我们可

    2024年02月16日
    浏览(37)
  • 2023高校毕业生薪酬曝光,这才是90%应届生的工资真相?

    随着全国高校应届毕业生总人数不断攀升,每年毕业季都号称就业形势最差,没有之一。 2023高校毕业生薪酬排行榜新鲜出炉,工资差距难免引起部分学生“心理不平衡”。在此之外,排行榜背后所透露的讯息,更值得我们关注。 2023年毕业生就业真相到底是什么? 哪个行业

    2024年02月16日
    浏览(39)
  • 这才是大学生该做的副业,别再痴迷于游戏了!

    感谢大家一直以来的支持和关注,尤其是在我的上一个公众号被关闭后,仍然选择跟随我的老粉丝们,你们的支持是我继续前行的动力。为了回馈大家长期以来的陪伴,我决定分享一些实用的干货,这些都是我亲身实践并且取得成功的经验和方法。 为了节约时间,我首先把我

    2024年02月19日
    浏览(50)
  • 这才是单片机44矩阵键盘控制数码管最简单的写法

    这才是单片机4*4矩阵键盘控制数码管最简单的写法 ///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像黑色字体加我地球呺也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比赛/

    2023年04月19日
    浏览(40)
  • 再见了RDM,Redis官方GUI才是最好的!

    直观高效的 Redis GUI 管理工具,它可以对 Redis 的内存、连接数、命中率以及正常运行时间进行监控,并且可以在界面上使用 CLI 和连接的 Redis 进行交互(RedisInsight 内置对 Redis 模块支持),官方下载地址。 使用 Redis 或 Redis Stack 进行开发时,将您的生产力提升到一个新的水平

    2024年01月19日
    浏览(37)
  • 这才是自动化测试,资深测试构建持续交付体系(高质量)持续集成...

    软件测试-自动化测试 Python自动化测试:https://www.bilibili.com/video/BV16G411x76E/ 无论是保障质量,还是提升效率,都需要某些持续的能力来支撑他们。 这种支撑能力,可以看作是一种工厂化的流水线能力,业内通常将其统称为持续交付。 从质量保障的角度总体来说,可以将其分为

    2024年02月05日
    浏览(45)
  • 【Python】中秋节快到了,这才是程序员该赏的“月亮”(3D+音频+源码)

    目录 导语​ 一、做月饼 二、赏“月” 1. 引言 2. 下载ursina库 3.实现思路 4.资源的获取 总结 送一个圆圆的饼,寄一个圆圆的请,献一颗圆圆的心,圆一个圆圆的梦,中秋节快乐!转眼之间,农历八月十五中秋节即将到来,又是一年中秋,作为一位Python爱好者,怎么能置之不理

    2024年02月08日
    浏览(29)
  • 实体批发商通用3种拓客手段,哪个才是你的菜?

    这年头,干实业赚钱真不容易,因为这个那个等各方面原因,人们的购买欲望下降,我们做批发的,客户数量本就不多,再加上订货量少,就更加艰难了…… 今天要给大家分享的是实体批发商通用的3种拓客手段,一起来看看哪个更适合你吧! 1、地推 最简单直接的方式就是

    2024年02月04日
    浏览(38)
  • 一键清理电脑垃圾,这才是应该装在你电脑上的“管理”软件/CleanMyMac激活码永久密钥

    https ://souurl.cn/c6NHa8 安装包下载地址 。 (文末有密钥) 一年一度的苹果秋季新品发布会终于和大家见面了(已经过去了),苹果除了发布了新款iPhone 15外,M3芯片的MacBook Pro也格外吸引人眼球。 人生难免存在诸多遗憾,虽然没有能力追求iPhone 15,但是我却借此机会,换了一台

    2024年02月04日
    浏览(49)
  • 【Redis】redis简介

    Remote Dictionary Server 是完全开源的,使用ANSIC语言编写遵守BSD协议,是一个高性能的Key-Value数据库,提供了丰富的数据结构,例如String、Hash、List、Set、SortedSet等等。数据是存在内存中的,同时Redis支持事务、持久化、LUA脚本、发布/订阅、缓存淘汰、流技术等多种功能,提供了

    2023年04月25日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包