phpcms如何发布网站网站维护html模板

news/2025/9/22 18:12:06/文章来源:
phpcms如何发布网站,网站维护html模板,网站开发语言总结有哪些,做试客需要去哪些网站Redis 和 Mysql 数据库数据如何保持一致性 保持Redis和MySQL数据库数据一致性是一个常见且重要的问题#xff0c;特别是在使用Redis作为MySQL数据库的缓存层时。以下是几种常用的保证二者数据一致性的策略和方法#xff1a; 双写一致性#xff08;同步更新#xff09;特别是在使用Redis作为MySQL数据库的缓存层时。以下是几种常用的保证二者数据一致性的策略和方法 双写一致性同步更新 先更新MySQL后更新Redis 在业务代码中首先执行对MySQL的写操作待该操作成功后立即更新Redis中的对应缓存数据。这种方式简单直接但存在短暂窗口期内数据不一致的风险即在MySQL更新后、Redis更新前如果有请求读取缓存可能会获取到旧数据。 先更新Redis后更新MySQL 反之先更新Redis然后更新MySQL。这种方式同样存在类似的风险即在Redis更新后、MySQL更新前如果有请求直接查询数据库如缓存未命中或被主动刷新可能会看到新缓存数据与旧数据库数据之间的不一致。 异步更新 使用消息队列 当MySQL数据更新时将更新事件发送到消息队列如RabbitMQ、Kafka等。消费者服务监听队列接收到消息后异步地更新Redis缓存。这种方法可以缓解同步更新时的性能压力但增加了系统的复杂性并且需要处理消息丢失、重复消费等问题以保证最终一致性。 基于MySQL Binlog的更新 订阅Binlog 利用工具如Canal、Maxwell、Debezium等订阅MySQL的二进制日志Binlog当MySQL数据发生变化时这些工具能够实时捕获并解析Binlog事件然后将更新信息推送到Redis自动更新缓存。这种方法可以近乎实时地保持数据一致性且对业务代码无侵入但需要额外部署和维护Binlog订阅服务。 使用版本号或时间戳 在数据模型中引入版本号或时间戳字段每次更新时同时更新MySQL和Redis中的相应字段。在读取数据时可以通过比较版本号或时间戳来判断缓存是否过期从而决定是否从数据库重新加载数据。这种方法有助于解决缓存与数据库数据版本冲突问题但需要在业务逻辑中处理版本比较逻辑。 Redis事务 Redis本身支持事务MULTI/EXEC命令可以在一个事务中执行一系列操作保证这些操作的原子性。对于涉及MySQL和Redis的更新操作可以尝试将它们封装在Redis事务中执行但需要注意的是这并不能跨越Redis和MySQL两个不同的系统实现真正的分布式事务只能保证Redis内部操作的原子性。 普通双删策略 1、线程A先删除缓存再更新数据库再删除缓存 2、线程B查询缓存没有数据在线程A更新数据库之前查询到旧数据此时系统时间片切换到线程A执行删除缓存之后又轮到线程B放入缓存旧数据 3、线程C针对于线程A查询缓存没有数据查询到旧数据放入缓存旧数据 都不能满足缓存和数据一致性。 延迟双删策略 在更新MySQL后立即删除Redis缓存然后设置一个短时延如几毫秒后再次删除缓存。这样可以尽量减少在第一次删除缓存到MySQL更新生效期间新数据被缓存的可能性。 1、线程A先删除缓存之后更新数据库 2、线程B和线程C发现缓存没数据查询数据库。线程B查询到的是旧数据线程C查询到的是新数据。之后纷纷放入缓存 3、线程A延时3-5秒时间一般要大于SQL执行时间线程切换执行时间100ms足够再将缓存删除。之后其他线程再查询缓存发现没数据再次查询数据库及放入缓存都是新数据 极端情况就是线程D所以延时双删还是不一定能保证缓存及数据一致。 延迟双删策略 1、在发现缓存没有数据后在执行查询数据库前对该Key进行加锁查询数据库并放入缓存后再解锁这样可以避免缓存击穿问题当某个redis数据不存在时大量线程并发查询数据库。 2、在需要执行双删前对该Key进行加锁之后执行删除缓存更新数据库放入新数据到缓存在解锁。保证缓存和数据一致性。 3、加锁的Key都需要设置过期时间避免因为宕机造成死锁。 综合考虑选择哪种方法取决于具体的应用场景、数据一致性要求、系统复杂性接受程度以及运维成本等因素。实践中常采用组合策略如结合使用消息队列与Binlog订阅或者在业务代码中直接同步更新的同时辅以定期的数据校验与修复机制以提高数据一致性的保障程度。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/909934.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

辽宁大连直客部七部是什么件搜索引擎优化完整过程

十一、攀登不止小游戏制作 制作微信小游戏大致流程与微信小程序、Web类似,不同的在于是组件的使用。我们此节需要完成的小游戏需求为: 小球触碰矩形块会跳跃或攀爬小球触碰顶部或底部游戏结束点击屏幕将会使小球朝着该方向移动小球进行跳跃时分数会增加…

systemd服务自身重启策略管理

systemd服务自身重启策略管理你贴的这一段是 systemd 的 unit 文件中 [Service] 部分的配置。重点是你问的: Restart=on-failure我来详细解释:1️⃣ Restart 选项 Restart 决定 当服务退出时 systemd 是否重启服务,…

中工信融做网站怎么样网页布局设计摘要

目录 一、环境描述 二、安装mysql 2.1 卸载mysql(如果没安装过,可忽略) 2.1.1 列出安装的mysql 2.1.2 卸载mysql 2.1.3 删除mysql文件目录 2.1.3.1 查看mysql 目录 2.1.3.2 依次删除 2.2 在线安装 2.2.1 下载安装源 2.2.2 安装源rpm 2.2.3 加入rpm密钥 …

快递物流公司网站模板美食网站开发的特点与总结

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只…

电商网站设计与制作论文手机免费建站app

【Web安全】sqlmap的使用笔记 文章目录 【Web安全】sqlmap的使用笔记1. 目标2. 脱库2.1. 脱库(补充) 3. 其他3.1. 其他(补充) 4. 绕过脚本tamper讲解 1. 目标 操作作用必要示例-u指定URL,检测注入点sqlmap -u http://…

网站建设 视频阿里巴巴外贸圈论坛

原因是每次下载内容在浏览器左下角都有提示,一般都是选择打开所在文件夹,一次手残,点了总是打开此文件导致一下载文件就自动打开。 解决方法。 1.点击右上角的... 2.找到设置-高级设置-下载 3.关掉我标红的位置信息即可。现在看不到啦&…

网站建设从零开始教程网络营销的特点有哪些

产品应用原理图 5-36V耐压 3W射灯应用线路图 产品描述 AP5165B 是一款外围电路简单的连续电流模式的降压型 LED 恒流驱动芯片。在输入电压高于LED 电压时,可以有效地用于驱动一颗或者多颗串联 LED。输出电流可调,可达 1A。适用于3-36V 电压范围的非隔离…

西安高校网站建设定制网站建设网站建设招标采购需求

CSS 滚动捕获 Scroll Snap CSS 滚动捕获允许开发者通过声明一些位置(或叫作捕获位置)来创建精准控制的滚动体验. 通常来说轮播图就是这种体验的例子, 在轮播图中, 用户只能停在图 A 或者图 B, 而不能停在 A 和 B 的中间. 比如平时用淘宝或小红书, 当你上滑到下一个推荐内容时…

java log4j 代码中 新增按日保存日志文件的功能

/*** log4j.logger.oaReceviceBudgetApproveStatusTaskServiceLog=info, stdout, oaReceviceBudgetApproveStatusTaskService* log4j.additivity.oaReceviceBudgetApproveStatusTaskServiceLog = true* log4j.appender…

训练集,验证集,测试集

在机器学习和深度学习中,我们通常不会用全部数据来训练模型,而是将其划分为三个独立的部分:训练集、验证集和测试集。 这就像一个学生准备考试一样: 1. 训练集 (Training Set) 训练集是学生上课时做的所有练习题。…

Android 项目:画图白板APP开发(六)——分页展示 - 教程

Android 项目:画图白板APP开发(六)——分页展示 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas…

ESP32 读取旋转编码器

1、旋转编码器原理1.1、以A输入为时钟,边沿中断检测A输入的上升边沿,同时在中断回调函数判断B的电平状态 ①正转CW:A上升沿,B低电平; ②反转CWW:A上升沿,B高电平; 1.2、中间按键直接使用电平或者电平中断检测;…

负载分析和排查六

负载分析和排查六明白,我帮你整理成一个完整专业文档,覆盖 CPU 各类负载(%user、%sys、%soft、%si、%iowait)分析、溯源、定位工具与优化策略,并包含脚本示例和中断原理说明。文档结构清晰,便于直接使用或汇报。…

赣州市建设工程造价管理网站现在做百度推广有用吗

目录 3.3 网络结构与损失函数设计 3.3.1 网络结构 3.3.2 损失函数设计

js网站大全郑州网站制作推广

除了基本的分组功能之外,GROUP BY 子句还提供了几个高级选项,可以用来实现更复杂的报表功能。 本文比较五种主流数据库实现的高级分组功能,包括 MySQL、Oracle、SQL Server、PostgreSQL 以及 SQLite。 功能MySQLOracleSQL ServerPostgreSQL…

苏州高端网站设计企业西安网络科技有限公司有哪些

1. 引言 限界上下文可以拆分为两个词,限界和上下文。限界:是指一个界限,具体的某一个范围。上下文:个人理解就是语境。 比如我们常说的段子: “我想静静。”这个句子一般是想表达“我想静一静”的意思。但是我们却把…

网站内容建设要求 age06建设六马路小学 网站

此文为人大金仓数据库安装程序(windows下kingbase开发及测试用)。 1 人大金仓-成为世界卓越的数据库产品与服务提供商 官方下载安装包,同时需要下载授权文件,补丁文件可以不下。 2 点击安装 3 选择授权文件 4 默认安装即可&…

饰品交易网站怎么做做礼品建什么网站

Kafka消费流程 消息是如何被消费者消费掉的。其中最核心的有以下内容。 1、多线程安全问题 2、群组协调 3、分区再均衡 1.多线程安全问题 当多个线程访问某个类时,这个类始终都能表现出正确的行为,那么就称这个类是线程安全的。 对于线程安全&…

武威市建设局网站 放管服网站服务公司业务范围包括

软件项目范围基准明确了项目的边界、目标和主要交付成果,有助于提高项目成本、进度和资源估算的准确性,便于实施项目控制,而且还可以帮助我们清楚分派责任,防止范围蔓延,从而提升项目的成功率。 如果没有明确确定范围基…