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

哪个网站专门做游戏脚本网站换主推关键词会怎么样

哪个网站专门做游戏脚本,网站换主推关键词会怎么样,武当王也高清壁纸,做网站不挣钱一、什么是数据库和缓存双写一致性#xff1f; 在分布式系统中#xff0c;数据库和缓存会搭配一起使用#xff0c;以此来保证程序的整体查询性能。也就说#xff0c;分布式系统为了缓解数据库查询的压力#xff0c;会将查出来的数据保存在缓存中#xff0c;下次再查询时…一、什么是数据库和缓存双写一致性 在分布式系统中数据库和缓存会搭配一起使用以此来保证程序的整体查询性能。也就说分布式系统为了缓解数据库查询的压力会将查出来的数据保存在缓存中下次再查询时直接走缓存系统而不再查询数据库这样就极大的提高了整体的查询性能。 1.1 为什么缓存比数据库快 缓存之所以比数据库快的主要原因有以下 3 点 内存访问速度快缓存通常将数据存储在内存中而数据库将数据存储在磁盘上。相比于磁盘访问内存访问速度更快可以达到纳秒级别的读取速度远远快于数据库的毫秒级别的读取速度。 IO 操作次数少数据库通常需要进行磁盘 IO 操作包括读取和写入磁盘数据。而缓存将数据存储在内存中避免了磁盘 IO 的开销。内存访问不需要进行磁盘寻址和机械运动相对来说速度更快。 特殊的数据结构缓存的数据结构通常为 key-value 形式的也就是说缓存可以做到任何数据量级下的查询数据复杂度为 O(1)所以它的查询效率是非常高的而数据库采用的是传统数据结构设计可能需要查询二叉树、或全文搜索、或回表查询等操作所以其查询性能是远低于缓存系统的。 1.2 缓存一致性问题 虽然缓存可以极大的提高查询性能但同时也带来的新的问题数据库和缓存一致性的问题。 具体来说在一个常见的应用场景中当更新数据库的操作完成后需要同步更新缓存以保证缓存中的数据与数据库中的数据保持一致。然而由于数据库和缓存是两个不同的组件它们的数据更新操作是异步的可能存在以下问题 数据延迟数据库更新和缓存更新之间存在时间延迟导致缓存中的数据不是最新的。这可能会引起数据的不一致当其他请求读取数据时可能会读取到旧的数据。 更新失败在尝试更新缓存时可能出现更新失败的情况。例如缓存节点暂时不可用网络故障等。如果更新缓存失败而未进行适当的处理也会导致数据库和缓存之间的数据不一致。 也就说因为以上原因可能会导致 A 用户和 B 用户执行了同一个查询操作但是得到了完全不同的结果这就是数据库和缓存的一致性问题。 二、如何解决双写一致性问题 解决缓存和数据库一致问题的常见解决方案有以下 4 种 先修改数据库后更新缓存。 先更新缓存后修改数据库。 先修改数据库后删除缓存。 先删除缓存后修改数据库。 然而前 3 种解决方案有同一个问题也就是当第一步操作执行完之后第二步未执行的情况下就会导致数据库和缓存的一致性问题例如第一步执行完之后系统掉电了那么一致性问题就会一直存在。 相比之下第 4 种解决方案先删除缓存后修改数据库相比于前三种解决方案更有优势起码它保证了双方都未执行成功那么从数据一致性层面来讲第 4 种方案起码保证了一定的数据一致性然而第 4 种执行方案依然存在其他问题例如以下这几个 业务完整性问题程序只执行了一半第一步执行完了但第二步未执行的情况。 并发保存旧值的问题在并发环境下第四种方案可能会导致缓存保存旧值的情况例如以下执行情况 三、消息队列 延迟双删策略 双写一致性问题的最终解决方案是消息队列 延迟双删策略。 3.1 为什么要使用消息队列 因为消息队列里面有消息确认机制它可以保证我们执行完第一步之后即时掉电重启的情况依然可以执行后续的流程因为之前的消息未进行消息确认所以程序重启之后会继续执行后续的流程这样就保证了业务执行的完整性。 3.2 什么是延迟双删 延迟双删指的是删除两次缓存并且最后一次是延迟删除具体执行流程如下 删除缓存 更新数据库 延迟一会再删除缓存 最后一次延迟删除缓存的原因是为了避免上面因为并发问题导致保存旧值的情况发生所以会延迟一段时间之后再进行删除操作。这样即使有并发问题也能最大限度的解决保存旧值的情况因为是延迟之后删除的所以即使因为并发问题保存了旧值但延迟一段时间之后旧值就会被删除那么这样就自然而然的保证了数据库和缓存的最终一致性。 总结 数据库和缓存双写一致性问题是一道经典的面试题最初解决方案是先更新数据库、再删除缓存然而如果发生掉电情况只执行了前一步操作那么缓存和数据库就出现了不一致性的问题。为了解决这个问题所以通常会采用延迟双删 消息队列来保证业务的完整执行和数据一致性问题。
http://www.zqtcl.cn/news/237675/

相关文章:

  • 萌宝宝投票网站怎么做正规网站建设多少费用
  • 产权交易网站建设方案耐克网站建设的历程
  • 网站建设投入及费用wordpress 收录插件
  • 东莞网站制作个性化清溪网站仿做
  • 简单展示网站模板天津建设网站哪家好
  • 建个人网站赚钱多吗福建省住房和城乡建设厅网站首页
  • 网站建设课程设计实训心得seo关键词优化方案
  • 逸阳网站建设的目标郑州建设电商网站
  • 有了网址怎么做网站上海网站推广服务
  • 惠州网站seo排名优化esc怎么做网站
  • 咨询公司网站设计网站建设技能
  • 上海湖南网站建设新学校网站建设成果
  • 网站开发有哪些竞赛建站行业新闻
  • 满足seo需求的网站大型网站常见问题
  • 做网站要求高吗珠宝网站建设
  • 网站建设方案 预算高端制作网站哪家专业
  • 响应式网站什么意思长春做个人网站做不了
  • 手机网站排名优化软件网站登陆页面怎么做
  • 辽宁网站建设价格杭江建设有限公司
  • 成立公司在什么网站网络推广推广培训
  • 承德网站制作公司哪家好公司网络组建方案模板
  • 用wordpress 建网站网站关键词怎么改
  • 怎么做网站做站点创建站怎么上传网站怎么办
  • 十堰网站建设专家html做的旅游网站
  • 网站项目上线流程网站改版需求说明
  • 网站建设制作公司xshell如何做网站
  • 义乌个人兼职做建设网站琼海做网站公司
  • 什么网站可以直接做word在柬埔寨做网站彩票推广
  • 深圳市宝安区住房和建设局网站校园网络方案设计
  • 株洲建设网站制作seo快速软件