当前位置: 首页 > news >正文

redis全套参数配置及降级解决方案

文章目录

  • redis高可用核心参数配置
    • 1.Lettuce
    • 2.Jedis
    • 3.Redisson
    • 4.其他客户端
  • redis降级场景简介
  • 一、业务背景
  • 二、设计方案
  • 三、实现方案
  • 四、总结


redis高可用核心参数配置

1.Lettuce

提示:该客户端无主动探活机制,只能依赖于 OS KeepaAlive 机制,探测周期过长,且底层采用共享连接,遇到网络抖动或故障时,影响半径较大,强烈建议换为Jedis

2.Jedis

  • 需要通过设置连接探活机制缩短影响时间。建议将testWhileIdle设置为true;对于业务连接极端敏感的,并且节点连接数在5000以下(是节点连接数,不是集群连接数),testOnBorrow也可以配置为true;
  • 将Jedis版本升级到>=3.6.1;
  • Jedis全套高可用配置可参考另一篇。

3.Redisson

  • 需要通过设置连接探活机制缩短影响时间。建议将pingConnectionInterval调小,设置为3000ms;
  • 关闭读写分离。将readMode和subscriptionMode设置为MASTER;
  • 将Redission版本升级到>3.18.0;
  • Redission全套高可用配置可参考另一篇。

4.其他客户端

  • 其他客户端(Python、Node.js、PHP等)需要进行模拟测试Redis节点主备切换的情况下服务是否仍能正常连接redis

redis降级场景简介

提示:连接redis集群带有重试连接机制和实例转移连接机制,所以导致每一个请求中对redis的连接非常耗时

场景一:业务存在下游资源支撑如数据库或其他存储实例,这种情况只需要处理redis连接异常导致的接口请求超时问题,采用的方式为初次超时捕获连接异常后向监控系统抛出特定告警,打印日志。随后查询下游存储实例获取数据返回。告警向运维人员发送通知,修改逻辑参数后重启实例,使后续每次查询都直接访问下游存储实例避免浪费时间,同时安排redis恢复工作,待恢复好后修改再参数重启。

场景二:SDK里的redis损毁,无直接可用的下游存储实例支撑。处理方案为在SDK中维护一个本地缓存如caffeine,定时同步redis数据至本地缓存,当redis崩溃或连接超时直接访问本地缓存。或创建Redis数据的直接操作方系统,开启备用的接口调用,由第三方的系统服务加第三方数据库提供SDK-Redis降级支撑,最差的方案可以直接mock静态数据返回,满足核心业务流程不阻塞。


一、业务背景

  • 认证验权服务中台提供的用于分布式会话权限管理功能的SDK,里的redis组件存在崩溃风险,需要对其做出降级,用于支持在redis崩溃后,不影响某段时间内已登录过的用户的正常使用。可以拒绝登录业务流程

二、设计方案


三、实现方案


四、总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

相关文章:

redis全套参数配置及降级解决方案

文章目录 redis高可用核心参数配置1.Lettuce2.Jedis3.Redisson4.其他客户端 redis降级场景简介一、业务背景二、设计方案三、实现方案四、总结 redis高可用核心参数配置 1.Lettuce 提示:该客户端无主动探活机制,只能依赖于 OS KeepaAlive 机制&#xf…...

AMD即将上市大量中端显卡,为新显卡支付过高价格的日子可能结束

​AMD在本周末(8月25日)的德国Gamescom活动中展示了两款新显卡和一些新的升级技术,这些新GPU的定价将与英伟达的GeForce RTX 4000卡竞争。 这是一件大事,因为新的Radeon RX 7700 XT和7800 XT卡占据了AMD Radeon RX 7000系列产品线…...

go学习一之go的初体验

go语言学习笔记 一、golang初体验: 1.简单体验案例: package main{ //把这个test.go归属到main import "fmt" //引入一个包 func main(){//输出hellofmt.Println("hello world")} }2.从案例学到的知识点: (1) go文件的后缀是.…...

智能制造产业链数字化转型、数字化互联工厂建设方案PPT

本资料来源公开网络,仅供个人学习,请勿商用,如有侵权请联系删除,更多浏览公众号:智慧方案文库 篇幅有限,无法完全展示,喜欢资料可转发评论,私信了解更多信息。...

【安卓】拿注册码的两种方式

【安卓】拿注册码的两种方式 文章仅用于学习交流,请勿利用文章中的技术对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。首发吾爱:https://www.52pojie.cn/thread-1826802-1-1.html言归…...

【C++】—— 异常处理

前言: 本期,我将给大家讲解的是有关 异常处理 的相关知识! 目录 (一)C语言传统的处理错误的方式 (二)C异常概念 (三)异常的使用 1、异常的抛出和捕获 1️⃣ 异常的…...

cookie和session是什么,区别是什么?

cookie HTTP 协议中的 Cookie 包括 Web Cookie 和浏览器 Cookie,它是服务器发送到 Web 浏览器的⼀ ⼩块数据。服务器发送到浏览器的 Cookie,浏览器会进⾏存储,并与下⼀个请求⼀起发送到服务器。通 常,它⽤于判断两个请求是否来⾃…...

linux的mmc子系统与块设备关联

1.前言 本文主要block组件的主要流程,在介绍的过程中,将详细说明和block相关的流程,涉及到其它组件的详细流程再在相关文章中说明。 2.主要数据结构和API 2.1 struct mmc_card Elemete Namestruct mmc_cardPathinclude/linux/mmc/card.hRe…...

【Spring MVC】

目录 🍮1 什么是 MVC ? 🎁2 Spring MVC 的连接 🍘2.1 RequestMapping 实现 POST 和 GET 请求 🥣2.2 GetMapping 只支持 GET 请求 🫖2.3 PostMapping 只支持 POST 请求 🍬3 Spring MVC 获取参数的…...

【ES】笔记-生成器函数与调用

function* function* 这种声明方式 (function关键字后跟一个星号)会定义一个生成器函数 (generator function),它返回一个 Generator 对象。 function * gen(){console.log("heloo generator")}如何调用呢?先看下里面的内容 返回…...

将Spring Boot与Redis集成

一、引言 1、SpringBoot: Spring Boot是一个用于创建独立且可执行的Spring应用程序的框架。它简化了基于Spring框架的应用程序的开发过程,并提供了一种快速和简便的方式来构建Java应用程序。 Spring Boot提供了自动配置机制,通过引入适当的…...

vue echarts

安装 npm i -D echarts使用 <script setup lang"ts"> import * as echarts from echarts import { onMounted } from vueonMounted(() > {interface DataItem {value: [string, number]}let myChart echarts.init(document.getElementById(main))let dat…...

idea上利用JDBC连接MySQL数据库(8.1.0版)

1.了解jdbc概念 JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API&#xff0c;可以为多种 关系数据库提供统一访问&#xff0c;它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准&#xff0c;据此可以构建 更高级的工具和接口&#…...

【100天精通python】Day47:python网络编程_Web编程基础

目录 1 网络编程与web编程 1.1 网络编程 1.2 web编程 2 Web开发概述 3 Web开发基础 3.1 HTTP协议 3.2 Web服务器 3.3 前端基础 3.4 静态服务器 3.5 前后端交互的基本原理 4 WSGI接口 4.1 CGI 简介 4.2 WSGI 简介 4.3 定义 WSGI 接口 4.4 运行 WSGI 服务 4.5…...

DockerCompose介绍与使用

DockerCompose介绍与使用 1、DockerCompose介绍 DockerCompose用于定义和运行多容器 Docker 应用程序的工具。 通过 Compose可以使用 YAML 文件来配置应用程序需要的所有服务。一个使用Docker容器的应用&#xff0c;通常由多个容器组成&#xff0c;使用Docker Compose不再需要…...

Windows Qt 5.12.10下载与安装

Qt 入门实战教程&#xff08;目录&#xff09; C自学精简实践教程 目录(必读) 1 Qt5.12.10下载 qt-opensource-windows-x86-5.12.10.exe 官方离线安装包 Download Source Package Offline Installers | Qt 下载巨慢&#xff08;也可能很快&#xff09; 只能下载到最新的&…...

RustDesk最新版本编译与打包

本文环境 主要参考&#xff1a; https://www.yuque.com/shikangsi/efy0cp/wei3g1?https://blog.csdn.net/hualuohuakai2014/article/details/121605631 问题 flutter 生成 bridge 文件。 先安装工具&#xff0c;再生成ffi文件。 PS C:\Users\Administrator> cargo ins…...

Gin 框架入门实战系列(一)

GIN介绍 Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点 对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错 借助框架开发,不仅可以省去很多常用的封装带来的时间,…...

【测试】pywinauto的简单使用(安装、常用对象、元素控件、鼠标操作、键盘操作)

1.说明 pywinauto是一个用于自动化Python 模块&#xff0c;适合Windows系统的软件&#xff08;GUI&#xff09;&#xff0c;可以通过Pywinauto遍历窗口&#xff08;对话框&#xff09;和窗口里的控件&#xff0c;也可以控制鼠标和键盘输入&#xff0c;所以它能做的事情比之前介…...

Java基础十八(正则表达式 + 日期时间)

1. 正则表达式 1.1 普通字符 字符描述示例[abc]匹配 […] 中所有字符[hlo] 匹配字符串 "hello world" 中所有的 h l o 字母[^ABC]匹配除了 […] 中所有字符[hlo] 匹配字符串 "hello world" 中除了 h l o 的所有字母[^a-z]匹配除了 […] 中所有字符[hlo] 匹…...

2026年AI大模型API中转站深度测评:谁能成为生产环境下的最优解决方案?

2026年&#xff0c;AI模型的迭代速度进一步加快。从年初在技术社区引起轰动的OpenClaw架构&#xff0c;到GPT - 5.4、Claude 4.6等性能领先的通用模型&#xff0c;再到视频生成领域的Sora2与Veo3&#xff0c;模型之间的竞争愈发激烈。然而&#xff0c;国内开发者在调用这些模型…...

为OpenClaw智能体工作流配置Taotoken作为统一模型供应商的详细步骤

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 为OpenClaw智能体工作流配置Taotoken作为统一模型供应商的详细步骤 OpenClaw是一个用于构建和编排AI智能体的开源框架。如果你正在…...

如何在浏览器中直接使用微信?wechat-need-web插件带你解锁微信网页版访问新姿势

如何在浏览器中直接使用微信&#xff1f;wechat-need-web插件带你解锁微信网页版访问新姿势 【免费下载链接】wechat-need-web 让微信网页版可用 / Allow the use of WeChat via webpage access 项目地址: https://gitcode.com/gh_mirrors/we/wechat-need-web 还在为每次…...

技能设计指南:用产品思维构建个人可衡量技能体系

1. 项目概述与核心价值最近在和一些做产品、运营的朋友聊天&#xff0c;发现一个挺有意思的现象&#xff1a;大家手上都有一堆“技能”&#xff0c;比如会写文案、会做数据分析、会用某个设计软件&#xff0c;但真到了要系统性地提升自己&#xff0c;或者向别人清晰展示自己能力…...

三线制PT100测温,采集到的V5和V6电压怎么算温度?一个公式搞定

三线制PT100测温&#xff1a;从电压采集到温度计算的工程实践 在工业温度测量领域&#xff0c;铂电阻PT100因其出色的稳定性和较宽的测温范围(-200℃~850℃)成为中高温测量的首选。不同于常见的两线制接法&#xff0c;三线制PT100通过增加一条导线有效补偿了线路电阻带来的误差…...

告别龟速!为树莓派4B挑选高速TF卡并优化烧写流程的实战心得

告别龟速&#xff01;为树莓派4B挑选高速TF卡并优化烧写流程的实战心得 树莓派4B作为一款性能强劲的单板计算机&#xff0c;其运行速度却常常受限于存储介质的选择和系统烧写流程的优化。许多开发者在使用过程中会遇到系统启动缓慢、软件安装卡顿、IO操作延迟高等问题&#xff…...

2026届必备的十大AI科研方案推荐榜单

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek AI论文工具能够覆盖学术创作的全部流程环节&#xff0c;给研究者以及学生给予结构化的文献梳…...

3大痛点解析:如何用茉莉花插件提升中文文献管理效率300%

3大痛点解析&#xff1a;如何用茉莉花插件提升中文文献管理效率300% 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件&#xff0c;用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 如果你正在使…...

工业 DC-DC 性能对比解析:钡特电源 DB2-24D15XT 与 A2415XT-2WR3 封装互通,降低研发成本

作为硬件工程师&#xff0c;在工业控制、仪器仪表等场景的供电方案设计中&#xff0c;工业DC-DC模块的选型直接关系到整机稳定性、研发效率及量产成本。尤其是小功率隔离型模块&#xff0c;既要满足电气性能要求&#xff0c;又要兼顾封装兼容性与供应链稳定性&#xff0c;国产化…...

基于ATmega16的寝室节能系统:从传感器到继电器的嵌入式实战

1. 项目概述与核心价值 最近在整理大学时期的项目笔记&#xff0c;翻到了一个当年和室友一起折腾的“寝室节能系统”&#xff0c;核心是一块ATmega16单片机。现在回头看&#xff0c;这个项目虽然硬件上不算复杂&#xff0c;但把传感器数据采集、实时控制、人机交互和简单的能源…...