智冠宝企业网站管理系统画图标网站

张小明 2026/1/1 16:04:52
智冠宝企业网站管理系统,画图标网站,济南电子商务网站开发,上市设计网站如何保证数据库和缓存一致性问题 我刚开始以为数据一致性指的是不同请求拿到的数据是一样的#xff0c;但是这个对于一致性的定义其实是强一致性。 为了保证系统的可用性和性能#xff0c;我们选择的是牺牲强一致性来获取最终一致性#xff0c;那么接下来我们只需要保证最终…如何保证数据库和缓存一致性问题我刚开始以为数据一致性指的是不同请求拿到的数据是一样的但是这个对于一致性的定义其实是强一致性。为了保证系统的可用性和性能我们选择的是牺牲强一致性来获取最终一致性那么接下来我们只需要保证最终一致性而无需考虑整个过程中的数据强一致性。我们使用的是旁路缓存的方式。对于读策略如果缓存没有过期直接读取即可。如果缓存过期可以选择客户端线程或者是redis的后台线程去读数据库的数据然后更新到缓存中最后再返回给客户端。对于写策略有两种方式先更新数据库后删缓存。先删缓存后更新数据库。对于先删缓存后更新数据库来说假设线程A删缓存此时线程B访问数据发现数据不在缓存中。那么线程B需要去数据库中获取数据再将数据放到缓存中等到线程A更新完数据库后此时数据库和缓存中的数据不一样无法保证最终一致性。对于先更新数据库后删缓存来说线程A先进行数据库的更新此时线程B访问缓存有数据直接返回接着线程A再进行缓存的删除此时可以保证缓存和数据库的一致性。后续请求访问缓存时没有命中会到数据库中进行获取对应数据。有一种特殊情况线程B在缓存中没有找到数据去数据库中进行数据的查找线程A更新数据库等到线程A删除缓存中的数据后线程B再将之前获取的数据放到缓存中。由于线程B拿到的数据是在线程A更新数据库之前的那么此时会存在数据库和缓存数据不一致的问题但是这样的概率会很低因为将数据写到缓存中的速度大于线程A更新数据库的速度删除缓存一般存在两种方式通过设置数据的过期时间和直接删除的方式。通过设置数据的过期时间比较麻烦设置过小缓存没有起到缓存效果请求会发到数据库中造成数据库的压力。设置过大缓存和数据库之间数据延迟较大且浪费内存。因此我们选择直接删除的方式来进行优化。此时我们需要保证直接删除能够成功否则旧有数据一直存放到缓存中会造成数据一致性问题。对于直接删除数据会有两种方式。一种是删除数据重试策略我们会将需要删除的数据放在消息队列中由客户端去获取需要删除的数据尝试删除如果删除成功那么将消息从消息队列中进行移除如果没有成功那么重新尝试几次。尝试几次依然没有成功需要向业务层反馈这个问题。这种方式缺点是我们需要通过在代码中写死向mq队列发送特定要删除的数据。另外一种是通过订阅binlog canal 消息队列方式。我们通过订阅binlog将数据解析为结构化数据存放到消息队列中接着编写一个简单的消费数据的消费者订阅mq接着通过获取数据的key来完成删除操作。通过ack机制来保证数据一致性问题。这种方式我们通过订阅binlog。数据发生更新此时binlog会发生改动那么canal能够察觉binlog的变化并将改动后的信息发送给mq。这样子并不需要我们硬编码来完成数据的删除操作。缺点是实现起来比较麻烦。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

有什么做衣服的网站中国移动网站备案管理系统

第一章:MCP AI-102 模型部署概述在企业级人工智能应用中,MCP AI-102 作为一款高性能推理模型,广泛应用于图像识别、自然语言处理等场景。其部署过程需兼顾安全性、可扩展性与低延迟响应,通常依托于云原生架构实现自动化管理。部署…

张小明 2025/12/30 1:55:25 网站建设

网站建设案例的公司网站建设 英语

KaLM-Embedding-V2.5:0.5B参数如何重塑多模态检索的边界 在AI模型纷纷向千亿参数冲刺的今天,一个仅含0.5B参数的小型多模态模型却悄然打破了“大即强”的迷思。HIT-TMG团队发布的 KaLM-Embedding-V2.5,不仅实现了文本与图像在统一语义空间中…

张小明 2025/12/30 1:54:52 网站建设

做网站去哪找国内定机票网站建设

突破语言壁垒:XUnity自动翻译插件实战指南 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 还在为看不懂日文游戏剧情而烦恼吗?是否曾经因为语言障碍错过了无数精彩的游戏内容&…

张小明 2026/1/1 14:10:18 网站建设

建设门户网站的请示推荐一些能打开的网站

CUDA Toolkit与Driver版本对应关系解析 在深度学习项目中,最令人头疼的问题往往不是模型设计或调参,而是环境配置——明明代码没问题,却提示 CUDA not available。这类问题背后,通常是 NVIDIA 驱动、CUDA Toolkit 和 PyTorch 构建…

张小明 2025/12/30 1:53:13 网站建设

seo做多个网站网站空间商推荐

Windows LTSC系统扩展应用生态完整指南 【免费下载链接】LTSC-Add-MicrosoftStore Add Windows Store to Windows 11 24H2 LTSC 项目地址: https://gitcode.com/gh_mirrors/ltscad/LTSC-Add-MicrosoftStore 企业级Windows 11 LTSC系统以其卓越的稳定性和安全性著称&…

张小明 2025/12/30 1:52:39 网站建设