后端八股笔记------Redis
Redis八股






上两种都有可能导致脏数据
所以使用两次删除缓存的技术,延时是因为数据库有主从问题需要更新,无法达到完全的强一致性,只能达到控制一致性。
一般放入缓存中的数据都是读多写少的数据

业务逻辑代码👇

写锁👇

读写锁的方法确实可以达成强一致性,但是效率太低了。









👆默认一般使用everysec


RDB如果两次备份之间宕机了,会丢失数据














多端部署无法限制线程的互斥👆



👆EX 过期时间还是需要设定的,因为如果突然宕机了,锁设定了时间会按时间释放,不设定则无法释放会造成死锁。



同一个线程可重入锁!!!👆


👆主机宕机了后,一个从属机器变成了主机器,再次为新线程分配锁,造成了两个线程持有一把锁,无法保证主从的一致性

👆红锁可以保证主从数据的一致性。但是低效
一般业务中redis不能保证数据的强一致性,如果想保证强一致性可以使用zookeeper








👆当master down了之后哨兵选代替主节点(master)的过程
👇脑裂是因为哨兵监听主节点的时候网络不畅,又在可控范围选择了新的master节点,当网络通常后,清空了master(原),让其成为slave,导致这段时间写在master里的数据被清空。


👆这个是解决脑裂的方法,write最少一个salve点,lag延迟不能超过5秒,这些不满足就拒绝客户端的请求,减少数据的进一步丢失。(不是很懂其中逻辑)


👆每个master保存不同的数据,彼此检测online状况(类似哨兵!),访问任意一个master就可以获得其他master的数据(master之间有路由)。

👇有效实例就是master节点



等待数据就绪和读取时间浪费了很多时间。👆





👆IO是最耗时的操作

相关文章:
后端八股笔记------Redis
Redis八股 上两种都有可能导致脏数据 所以使用两次删除缓存的技术,延时是因为数据库有主从问题需要更新,无法达到完全的强一致性,只能达到控制一致性。 一般放入缓存中的数据都是读多写少的数据 业务逻辑代码👇 写锁Ǵ…...
HarmonyOS通过 axios发送HTTP请求
我之前的文章 HarmonyOS 发送http网络请求 那么今天 我们就来说说axios 这个第三方工具 想必所有的前端开发者都不会陌生 axios 本身也属于 HTTP请求 所以鸿蒙开发中也支持它 但首先 想在HarmonyOS中 使用第三方工具库 就要先下载安装 ohpm 具体可以参考我的文章 HarmonyOS 下…...
【Kafka系列 08】生产者消息分区机制详解
一、前言 我们在使用 Apache Kafka 生产和消费消息的时候,肯定是希望能够将数据均匀地分配到所有服务器上。 比如很多公司使用 Kafka 收集应用服务器的日志数据,这种数据都是很多的,特别是对于那种大批量机器组成的集群环境,每分…...
【PyTorch】进阶学习:BCEWithLogitsLoss在多标签分类任务中的正确使用---logits与标签形状指南
【PyTorch】进阶学习:BCEWithLogitsLoss在多标签分类任务中的正确使用—logits与标签形状指南 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTo…...
ocr关键信心提取数据集
doc/doc_ch/dataset/kie_datasets.md PaddlePaddle/PaddleOCR - Gitee.com https://huggingface.co/datasets/howard-hou/OCR-VQA OCR-VQA Dataset | Papers With Code...
Linux中,配置systemctl操作Nginx
最近在通过Linux系统学一些技术,但是在启动Nginx时,总是需要执行其安装路径下的脚本文件,要么我们需要先进入其安装路径,要么我们每次执行命令直接拼上Nginx的完整目录,如启动时命令为/usr/local/nginx/sbin/nginx。 可…...
Sleuth(Micrometer)+ZipKin分布式链路追踪
Sleuth(Micrometer)ZipKin分布式链路追踪 Micrometer springboot3之前还可以用sleuth,springboot3之后就被Micrometer所替代 官网https://github.com/spring-cloud/spring-cloud-sleuth 为什么会出现这个技术? 在微服务框架中,一个由客户…...
fanout模式
生产者: public class Provider {public static void main(String[] args) throws IOException {Connection connection RabbitMQUtils.getConnection();Channel channel connection.createChannel();//通道声明指定的交换机 参数1:交换机名称 参数2&…...
Docker基础—CentOS中卸载Docker
要卸载已经安装好的 Docker,可以按照以下步骤进行: 1 停止正在运行的 Docker 服务 sudo systemctl stop docker 2 卸载 Docker 软件包 sudo yum remove docker-ce 3 删除 Docker 数据和配置文件(可选) sudo rm -rf /var/lib…...
深入解读 Elasticsearch 磁盘水位设置
本文将带你通过查看 Elasticsearch 源码来了解磁盘使用阈值在达到每个阶段的处理情况。 跳转文章末尾获取答案 环境 本文使用 Macos 系统测试,512M 的磁盘,目前剩余空间还有 60G 左右,所以按照 Elasticsearch 的设定,ES 中分片应…...
M1电脑 Xcode15升级遇到的问题
遇到四个问题 一、模拟器下载经常报错。 二、Xcode15报错: SDK does not contain libarclite 三、报错coreAudioTypes not found 四、xcode模拟器运行一次下次必定死机 一、模拟器下载经常报错。 可以https://developer.apple.com/download/all/?qios 下载最新的模拟器&…...
软考 系统架构设计师之回归及知识点回顾(3)
接前一篇文章:软考 系统架构设计师之回归及知识点回顾(2) 继续回顾一下之前已经介绍和讲解过的系统架构设计师中的知识点: 7. 净室软件工程 净室(Cleaning Room)软件工程是一种应用数学与统计学理论&…...
探索stable diffusion的奇妙世界--01
目录 1. 理解prompt提示词: 2. Prompt中的技术参数: 3. Prompt中的Negative提示词: 4. Prompt中的特殊元素: 5. Prompt在stable diffusion中的应用: 6. 作品展示: 在AI艺术领域,stable di…...
C语言数组的维数该如何理解?
一、问题 什么叫做维,维是不是数组中数的个数呢? 二、解答 维数是数组元素的下标个数。使⽤数组的时候,如果只有⼀个下标,则称为⼀维数组,⼀维数组⼀般表示⼀种线性数据的组合。⼆维数组则是有两个下标,可…...
opencv解析系列 - 基于DOM提取大面积植被(如森林)
Note:简单提取,不考虑后处理(填充空洞、平滑边界等) #include <iostream> #include "opencv2/imgproc.hpp" #include "opencv2/highgui.hpp" #include <opencv2/opencv.hpp> using namespace cv…...
【Leetcode】299. 猜数字游戏
文章目录 题目思路代码结果 题目 题目链接 你在和朋友一起玩 猜数字(Bulls and Cows)游戏,该游戏规则如下: 写出一个秘密数字,并请朋友猜这个数字是多少。朋友每猜测一次,你就会给他一个包含下述信息的提…...
JWT身份验证
在实际项目中一般会使用jwt鉴权方式。 JWT知识点 jwt,全称json web token ,JSON Web令牌是一种开放的行业标准RFC 7519方法,用于在两方安全地表示声明。具体网上有许多文章介绍,这里做简单的使用。 1.数据结构 JSON Web Token…...
IOS面试题object-c 71-80
71. 简单介绍下NSURLConnection类及 sendSynchronousRequest:returningResponse:error:与– initWithRequest:delegate:两个方法的区别?NSURLConnection 主要用于网络访问,其中 sendSynchronousRequest:returningResponse:error:是同步访问数据,即当前…...
计算机mfc140.dll文件缺失的修复方法分析,一键修复mfc140.dll
电脑显示mfc140.dll文件缺失信息时,不必担心,这通常是个容易解决的小问题。接下来让我们详细探究并解决mfc140.dll文件缺失的状况。以下将详述相应的解决方案,从而帮助您轻松克服这一技术难题。通过几个简单步骤,即可恢复正常使用…...
web前端框架
目前比较火热的几门框架: React React是由Facebook(脸书)开发和创建的开源框架。React 用于开发丰富的用户界面,特别是当您需要构建单页应用程序时。它是最强大的前端框架。 弊端: 您不具备 JavaScript 的实践知识,则建议不要使用 React。同样&#x…...
3分钟快速上手:WorkshopDL终极跨平台Steam创意工坊下载器完全指南
3分钟快速上手:WorkshopDL终极跨平台Steam创意工坊下载器完全指南 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 你是否拥有Epic或GOG平台的游戏,却眼馋…...
ESP32驱动GC9A01圆形屏:从图片数据到240x240全屏显示的实战解析
1. 硬件准备与连线指南 第一次拿到GC9A01圆形屏时,我对着密密麻麻的引脚有点懵——这玩意儿该怎么接ESP32?后来发现其实只要搞清楚几个关键引脚就能搞定。这块240x240的圆形屏通常有8个引脚,但实际必须接的只有6根线。我用的这块屏背面丝印很…...
MathType 7 与 Word 2016 深度集成:从安装到高效排版的完整指南
1. 为什么需要MathType 7与Word 2016深度集成? 作为一名经常需要撰写学术论文的科研工作者,我深刻体会到在Word中编辑复杂数学公式的痛苦。Word自带的公式编辑器虽然基础功能尚可,但遇到矩阵运算、特殊符号或多行对齐时,操作效率直…...
sguard_limit:腾讯游戏性能优化终极指南,告别ACE-Guard卡顿
sguard_limit:腾讯游戏性能优化终极指南,告别ACE-Guard卡顿 【免费下载链接】sguard_limit 限制ACE-Guard Client EXE占用系统资源,支持各种腾讯游戏 项目地址: https://gitcode.com/gh_mirrors/sg/sguard_limit 你是否在玩《英雄联盟…...
3分钟解锁QQ音乐加密文件:QMCDecode让你的音乐自由播放
3分钟解锁QQ音乐加密文件:QMCDecode让你的音乐自由播放 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac,qmc0,qmc3转mp3, mflac,mflac0等转flac),仅支持macOS,可自动识别到QQ音乐下载目录,默认…...
大模型客服落地难?SITS2026已验证的3层降本增效架构,含私有化微调SOP与SLA保障清单
第一章:SITS2026案例:大模型客服系统改造 2026奇点智能技术大会(https://ml-summit.org) SITS2026是某头部金融集团面向全渠道客户构建的智能客服中台项目,原系统基于规则引擎与传统NLU模块,响应准确率不足68%,平均首…...
【SOTA级冷启动优化指南】:基于17个生产环境LLM服务案例,提炼出唯一被验证有效的4阶段渐进式Warmup范式
第一章:大模型工程化中的冷启动优化 2026奇点智能技术大会(https://ml-summit.org) 大模型在首次部署或低流量场景下常面临推理延迟高、显存初始化慢、缓存未预热等“冷启动”瓶颈,直接影响用户体验与服务SLA。冷启动不仅体现为首次请求的毫秒级延迟激增…...
从‘头歌’实训出发:手把手教你用XPath和BeautifulSoup解析复杂网页数据(附避坑指南)
实战解析:XPath与BeautifulSoup在复杂网页数据抓取中的高阶应用 当我们需要从国防科技大学招生信息网这类结构复杂的页面中提取历年分数线数据时,传统的字符串匹配方法往往力不从心。本文将带您深入两种主流解析技术——XPath和BeautifulSoup的核心差异与…...
Local SDXL-Turbo实时绘画:打字即出图,5分钟搭建你的AI画室
Local SDXL-Turbo实时绘画:打字即出图,5分钟搭建你的AI画室 你有没有过这样的体验?脑子里闪过一个绝妙的画面,赶紧打开AI绘画工具,输入描述,然后就是漫长的等待——看着进度条一点点爬,灵感却在…...
Kandinsky-5.0-I2V-Lite-5s效果展示:AI生成插画→动态叙事短片(5秒内完成情绪传递)
Kandinsky-5.0-I2V-Lite-5s效果展示:AI生成插画→动态叙事短片(5秒内完成情绪传递) 1. 开箱即用的动态叙事工具 Kandinsky-5.0-I2V-Lite-5s是一款让人眼前一亮的轻量级图生视频模型。它最吸引人的特点是:你只需要准备一张静态插…...
