redis 分布式锁的简单使用

RedisLock——让 Redis 分布式锁变得简单 1. 项目介绍 该项目主要简化了使用 redis 分布式事务所的操作,实现傻瓜式加锁,释放锁的操作,并优雅的实现了等待锁释放的操作。等待锁释放的过程主要是使用了redis的监听功能,所以在使用该项目前,要确保redis已经开启了key事件监听, ... »

REDIS主从频繁切换事件排查

前言 目前生产配置了2台redis一主一从1.193和12.6,和3个哨兵。1.193,3.10,12.6,搭建的redis高可用环境。突然发生了redis频繁无响应。 现象 2台生产redis突然发生频繁的主从切换。由于目前redis配置主从切换全量同步先生成rdb数据文件保存到硬盘,然后将rdb ... »

疫情期间我是如何拿到20k的offer,2020年php面试题汇总

推荐视频:面试10家公司,收获9个offer,2020年PHP 面试问题 第一阶段1-2年 我认为1-2年对于PHP程序员来说是第一个门槛,这一阶段菜鸟正式从理论迈向企业级开发。我们知道如何使用工具、项目版本如何控制、接触并能够使用以下tplaravel等框架完成项目等等,积累了一定的开发经验,也 ... »

【Redis面试题】如何使用Redis实现微信步数排行榜?

1. 前言 之前写过一篇博客,讲解的是Redis的5种数据结构及其常用命令,当时有读者评论,说希望了解下这5种数据结构各自的使用场景,不过一直也没来得及写。 碰巧,在3月份找工作面试时,有个面试官先问了我Redis有哪几种数据结构,在我讲完后,面试官又问了我以下问题: 如何用Redis实现微信步数排 ... »

Redis高可用-主从,哨兵,集群

主从复制 Master-Slave主从概念 同时运行多个redis服务端,其中一个作为主(master),其他的一个或多个作为从(slave),主从之间通过网络进行通讯,slave通过复制master的数据来保持与master的数据同步,实现数据冗余; 在Redis中,配置主从复制非常简单,Redi ... »

使用Redis分布式锁实现主备

使用Redis分布式锁实现集群的主备 最近工作中遇到一个问题,我们会调用业务部门提供的HTTP接口获取所有的音视频任务信息,这些任务会被分发到各个机器节点进行处理。有两个方案: 方案一 为每台机器编号,比如有5台机器,编号为0,1,2,3,4,然后每台机器读取全量任务信息,将每个任务ID用机器总数量 ... »

redis使用技巧十连胜,学会工作六到飞起

Redis 在当前的技术社区里是非常热门的。从来自 Antirez 一个小小的个人项目到成为内存数据存储行业的标准,Redis已经走过了很长的一段路。 随之而来的一系列最佳实践,使得大多数人可以正确地使用 Redis。 下面我们将探索正确使用 Redis 的10个技巧。 1、停止使用 KEYS * ... »

OpenResty应用实践

一. 安装OpenResty 创建OpenResty用户 # useradd -M www -s /usr/sbin/nologin 安装OpenResty # apt-get install libpcre3-dev libssl-dev perl make build-essential c ... »

架构设计 | 缓存管理模式,监控和内存回收策略

本文源码:GitHub·点这里 || GitEE·点这里 一、缓存设计 1、缓存的作用 在业务系统中,查询时最容易出现性能问题的模块,查询面对的数据量大,筛选条件复杂,所以在系统架构中引入缓存层,则是非常必要的,用来缓存热点数据,达到快速响应的目的。 缓存使用的基本原则: 所有缓存数据,必须设置过期 ... »

初探Redis-基础类型List

Redis存在五种基础类型:字符串(String)、列表(List)、哈希(Hash)、集合(Set)、有序集合(Sorted Set)。本次列举出List的常用操作。 Redis官网:https://redis.io/ 一、列表(List)介绍 Redis列表是简单的字符串列表,按照插入顺序排序。 ... »

使用Redis——拳打南山敬老院,脚踩北斗幼儿园

拳打南山敬老院,脚踩北斗幼儿园 Redis 你说你用过对吧,你们怎么用的? 面试官您好,因为传统的关系型数据库如Mysql已经不能适用所有的场景了,比如秒杀的库存扣减,APP首页的访问流量高峰等等,都很容易把数据库打崩,所以引入了缓存中间件,目前市面上比较常用的缓存中间件有Redis和Memcach ... »

今天,你遇到redis线上连接超时了吗?

一封报警邮件,大量服务节点 redis 响应超时。 又来,好烦。 redis 响应变慢,查看日志,发现大量 TimeoutException。 大量TimeoutException,说明当前redis服务节点上已经堆积了大量的连接查询,超出redis服务能力,再次尝试连接的客户端,redis 服务节 ... »

Redis系列(七)Redis面试题

Redis 系列: 1. "Redis系列(一)Redis入门" 2. "Redis系列(二)Redis的8种数据类型" 3. "Redis系列(三)Redis的事务和Spring Boot整合" 4. "Redis系列(四)Redis配置文件和持久化" 5. "Redis系列(五)发布订阅模式、主 ... »

SpringBoot2.0 @Cacheable 添加超时策略

SpringBoot2.0 @Cacheable 添加超时策略 逻辑比较简单,废话不多说,直接进入正题: 需求:SpringBoot 利用注解使缓存支持过期时间 (同@Cacheable @CachePut 等注解用法) 第一步:新建注解CacheExpire 1 @Retention(Retent ... »

Spring Cache的基本使用与分析

概述 使用 Spring Cache 可以极大的简化我们对数据的缓存,并且它封装了多种缓存,本文基于 redis 来说明。 基本使用 1、所需依赖 2、配置文件 3、Spring Cache 提供的注解如下,使用方法参见: "官方文档" ,通过这些注解,我们可以方便的操作缓存数据。 :触发缓存写入的 ... »

关于redis内存分析,内存优化

对于redis来说,什么是最重要的? 毋庸置疑,是内存。 一、reids 内存分析 redis内存使用情况:info memory 示例: 可以看到,当前节点内存碎片率为226893824/209522728≈1.08,使用的内存分配器是jemalloc。 used_memory_rss 通常情况下 ... »

关于redis,你需要了解的几点!

一、关于 redis key: 1、是二进制安全的,也就是说,你可以使用任何形式的二进制序列来作为key,比如一个string,或者一个jpg图片的数据,需要说明的是,空字符串也是一个有效的key。 2、不建议使用过长的key,影响内存占用及数据查性能,对于过长的key,可以通过hash(例如SHA ... »