类别:

redis

  • 学习笔记——redis集群(定义、集群连接、查看集群、节点分配方式、插槽、集群中录入值、查询集群中的值、故障恢复)

    学习笔记——redis集群(定义、集群连接、查看集群、节点分配方式、插槽、集群中录入值、查询集群中的值、故障恢复)2023-02-10一、集群的定义1、redis集群实现了对redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在N个节点中,每个节点存储总数据的1/N。2、redis集群通过分区来提供一定程度的可用性:即使集群中有一部分节点失效或者无法进行通讯,集群也可以继续处理命令请求二

    2023-10-01
  • Redis面试题(一): Redis到底是多线程还是单线程?

    Redis面试题(一): Redis到底是多线程还是单线程?0.redis单线程问题单线程指的是网络请求模块使用了一个线程(所以不需考虑并发安全性),即一个线程处理所有网络请求,其他模块仍用了多个线程。1.为什么说redis能够快速执行(1)绝大部分请求是纯粹的内存操作(非常快速)(2)采用单线程,避免了不必要的上下文切换和竞争条件(3)非阻塞IO-IO多路复用2.redis的内部实现 内部实现采用epoll,采用了epoll+自己…

    2023-09-17
  • Windows下的Redis以及可视化连接工具RedisDesktopManager

    Windows下的Redis以及可视化连接工具RedisDesktopManager因为官方并没有开发和维护windows版本的Redis,而且现在也不再更新了,如果想使用可以去网上下载。Windows版本的Redis有安装版(后缀mis)和免安装版(后缀rar或者zip)Redis安装步骤(Windows):第一步:网上下载Redis(压缩版):链接第二步:解压压缩包即可,解压即安装第三步:测试Redis:第一步:打开安装目录第二步:双击redis-server.exe启动redis服务器第三步:双击redis-cli.exe打开redis客户端

    2023-09-17
  • 从 Reactor 模式看 Netty、Redis 线程模型

    从 Reactor 模式看 Netty、Redis 线程模型Reactor模式目前存在的线程模型有:传统阻塞I/O服务模型和Reactor模式。Reactor模式是基于事件驱动开发的,核心组成部分包括Reactor和线程池,其中Reactor负责监听和分发事件,线程池负责处理事件。Reactor分为三种模型:单线程模型(单Reactor单线程)多线程模型(单Reactor多线程)主从多线程模型(多Reactor多线程)单Reactor单线程Reactor和Handler都在同一个线程中执行,即s

    2023-09-10
  • Redis内部数据结构详解之跳跃表(skiplist)

    Redis内部数据结构详解之跳跃表(skiplist)一、跳跃表简介跳跃表是一种随机化数据结构,基于并联的链表,其效率可以比拟平衡二叉树,查找、删除、插入等操作都可以在对数期望时间内完成,对比平衡树,跳跃表的实现要简单直观很多。以下是一个跳跃表的例图(来自维基百科):从图中可以看出跳跃表主要有以下几个部分构成:1、 表头head:负责维护跳跃表的节点指针2、 节点node:实际保存元素值,每个节点有一层或多层3

    2023-09-06
  • 超好用的Redis管理及监控工具

    超好用的Redis管理及监控工具超好用的Redis管理及监控工具,使用后可大大提高你的工作效率!       Redis做为现在web应用开发的黄金搭担组合,大量的被应用,广泛用于存储session信息,权限信息,交易作业等热数据。做为一名有10年以上JAVA开发经验的程序员,工作中项目也是广泛使用了Redis,工作中也遇到了Redis的数据可视化不便、Redis的数据查看维护困难、Redis状态监控运维不易等问题。 …

    2023-09-04
  • Redis 集群的三种模式

    Redis 集群的三种模式Redis集群的三种模式一、主从同步/复制 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会丢失(或少量丢失)数据,因为持久化会把内存中数据保存到硬盘上,重启会从硬盘上加载数据。但是由于数据是存储在一台服务器上的,如果这台服务器出现硬盘故障等问题,也会导致数据丢失。为了避免单点故障,通常的做法是将数据库复制多个副本以部署在不同的服务器上,这样即使有一台服务器出现故障,其他服务器依然可以继续提供服务。为此,Redis提供了复制(replication)功能,可以实现当一台数据库

    2023-08-31
  • Java redis实现消息队列

    Java redis实现消息队列文章目录一、单元测试Java多线程二、redis实现消息队列三、java多线程模拟生产者消费者一、单元测试Java多线程使用junit测试多线程代码,但是等到程序结束,输出结果不完整,或者是完全没结果,因此,可能是其他线程还没结束,主线程就结束了。原因:junit在运行时,在主线程结束后就关闭了进程,不会等待各个线程运行结束。==解决方法:==①要是要求不高,可以通过thread.sleep(),让主线程暂时休眠(TimeUnit.MILLISECONDS.sleep(2

    2023-08-30
  • redis缓存为什么要延时双删[通俗易懂]

    redis缓存为什么要延时双删[通俗易懂]redis缓存为什么要延时双删

    2023-08-26
  • redis分布式锁的实现(setNx命令和Lua脚本)「终于解决」

    redis分布式锁的实现(setNx命令和Lua脚本)「终于解决」前言本篇文章主要介绍基于Redis的分布式锁实现到底是怎么一回事,其中参考了许多大佬写的文章,算是对分布式锁做一个总结分布式锁概览在多线程的环境下,为了保证一个代码块在同一时间只能由一个线程访问,Java中我们一般可以使用synchronized语法和ReetrantLock去保证,这实际上是本地锁的方式。但是现在公司都是流行分布式架构,在分布式环境下,如何保证不同节点的线程同步执行呢?实际上,对于分布式场景,我们可以使用分布式锁,它是控制分布式系统之间互斥访问共享资源的一种方式。比如说

    2023-08-24
  • 只允许本机访问redis端口,外网拒绝访问「建议收藏」

    只允许本机访问redis端口,外网拒绝访问「建议收藏」//只允许127.0.0.1访问6379iptables-AINPUT-s127.0.0.1-ptcpdport6379-jACCEPT//其他ip访问全部拒绝iptables-AINPUT-pTCPdport6379-jREJECT

    2023-08-22
  • Redis集群重启[通俗易懂]

    Redis集群重启[通俗易懂]机器ip192.168.251.51以下,为伪集群模式,redis服务重启流程演示:第一步查看所有redis进程 [root@i-netlrktd~]#ps-ef|grepredisroot147710Aug09?00:02:06redis-server*:6371[cluster]root148…

    2023-08-15
  • Centos 7 中 修改 Redis 的默认端口号[通俗易懂]

    Centos 7 中 修改 Redis 的默认端口号[通俗易懂]1、修改Redis的默认端口号(6379)问题描述:Redis的默认端口号为6379,使用默认的端口号不是很安全,为了安全一点,需要修改默认的端口号。查看默认的端口号:netstat-tunlp|grepredis修改默认端口号:vim/etc/redis.conf重启Redis服务:systemctlrestartredis查看修改…

    2023-08-11
  • 如何阅读redis源码「终于解决」

    如何阅读redis源码「终于解决」2019独角兽企业重金招聘Python工程师标准>>>…

    2023-08-09
  • 阿里面试Redis最常问的三个问题:缓存雪崩、击穿、穿透(带答案)「终于解决」

    阿里面试Redis最常问的三个问题:缓存雪崩、击穿、穿透(带答案)「终于解决」我没想到他会这么问

    2023-08-06
  • redis的持久化方式RDB和AOF的区别「终于解决」

    redis的持久化方式RDB和AOF的区别「终于解决」1、前言最近在项目中使用到Redis做缓存,方便多个业务进程之间共享数据。由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两种方式进行持久化,一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化),另外一…

    2023-08-04
  • redis查看所有的key&redis清空所有数据「终于解决」

    redis查看所有的key&redis清空所有数据「终于解决」1.首先进入redis的bin目录,启动redis服务2…/redis-cli-h192.168.172.***(这里写的是ip地址,也就是conf文件bind后面写的ip)3.我这里之前已经清空了,要是清的话直接用就行了

    2023-08-02
  • win10 如何查看redis版本「建议收藏」

    win10 如何查看redis版本「建议收藏」1下载redis并且解压https://www.runoob.com/redis/redis-install.html2分别启动服务端和客户端3在服务端输入info命令,可以看到当前版本

    2023-08-01
  • Redis RDB机制与AOF机制的区别[亲测有效]

    Redis RDB机制与AOF机制的区别[亲测有效]Redis执行流程Redis是一个内存数据库,数据保存在内存中:(1)客户端向服务端发送写操作(2)数据库服务端接收到写请求的数据(3)服务端调用write这个系统调用,将数据往磁盘上写(4)操作系统将缓冲区中的数据转移到磁盘控制器上(5)磁盘控制器将数据写到磁盘的物理介质中一.RDB机制:RDB其实就是把数据以快照的形式保存在磁盘上。RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘。也是默认的持久化方式,这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文

    2023-07-27
  • 21 Redis 缓冲区的用法「终于解决」

    21 Redis 缓冲区的用法「终于解决」21Redis缓冲区的用法前言一、客户端输入和输出缓冲区二、输入缓冲区溢出的应对方法三、输出缓冲区溢出的应对方法四、主从集群中的缓冲区总结前言缓冲区的功能是用一块内存空间来暂时存放命令数据,以免出现因为数据和命令的处理速度慢于发送速度而导致的数据丢失和性能问题。但因为缓冲区的内存空间有限,如果往里面写入数据的速度持续地大于从里面读取数据的速度,会导致缓冲区需要越来越多的内存来暂存数据。缓冲区占用的内存超出了设定的上限阈值时,会出现缓冲区溢出。如果发生了溢出,会丢数据了。随着累积的数据越来越多,

    2023-07-23
关注微信