问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

1.微服务管理-11.缓存-3.实践-缓存使用

发布网友 发布时间:2022-12-01 19:42

我来回答

1个回答

热心网友 时间:2023-11-07 20:18

微服务实践目录 ,可以参见连接。

缓存系列包括:
1.微服务管理-11.缓存概述
1.微服务管理-11.缓存-0.技术
1.微服务管理-11.缓存-1.多级缓存设计
1.微服务管理-11.缓存-2.典型缓存架构设计
1.微服务管理-11.缓存-3.实践-缓存使用
1.微服务管理-11.缓存-4.总结

在前面的几篇文章中讨论了很多关于缓存使用时要注意的事项。但在实际的工作中在哪些地方考虑这些事项其实还是不明确。为了帮助读者在生产中更好的使用缓存,本文主要以例子的方式说明在生产环境中使用缓存的方式。

结合前面几篇文章中的内容,并通过尽量的减少对于(相对)慢速服务/设备的访问来提高业务处理速度。但在业务处理过程中减少对于慢速服务/设备的访问并不一定就可以提升业务处理速度,并还有可能带来其他的问题。所以,这里展示几个例子来解释这些问题,并提供可用的生产环境方案。

在前几篇文章中出现过大量请求的时候的一个终极方案,如下:

这个方案参照了之前使用cdn缓存业务接口的方式来设计。通过OpenResty中支持的脚本语言Lua去控制本地返回还是使用Redis中结果返回。还有如果发生miss之后还需要调用后端服务来更新缓存。

这种方式的缓存的特点:适合IO密集型业务中,不适合计算密集型业务。并在业务过程中查看的业务占系统业务的绝大部分。例如:大型线上商城中的商品展示,新闻网站,网站门户,微博/陌生人社交,音视频服务,图片网站等。

在实际的缓存更新过程中一般有以下几种方式来更新缓存:

这几种方式针对不同的缓存模型来进行。

被动更新的特点在于有一个系统中的触发源去触发数据的更新动作。主动更新的特点在于只有用户在使用系统的特定功能时才会触发更新的动作。被动更新可以保证缓存和数据源之间的数据永远是一致的,并且不需要过多的补偿机制来保证数据一致性。主动更新的方式就会发生缓存和数据源中数据不一致的问题。所以,在后面会讨论在主动更新模式下尽量保证数据一致性的方式。

定时更新的方式在很多地方都有使用,例如CDN的定时溯源的机制就是以这种方式运行的。

事件更新中最核心的概念是事件,这里的事件最好是在领域驱动设计中的事件风暴阶段中这里出来的事件。因为这种事件代表着业务发生的动作,也代表着业务价值的流动。

在微服务架构模式下,任务、定时器都会由一个任务调度中心来完成。所以,在使用定时触发缓存更新时还是使用分布式任务调度中心来完成任务的调度工作。这样可以保证同一时间只有一个实例在处理。以这种方式简单的进行排他工作,防止同时操作缓存的问题。

用户触发更新也可以称为非固定周期更新,因为用户的触发时间是不确定的、任何时候都可能。有一种随机数的产生方式就是使用类似的机制:操作系统使用内核接受到中断的时间点作为随机数使用。所以,用户触发更新的方式就是一种随机发生的缓存更新。

下面一一说明图中内容的含义:

如上图中箭头所指向位置,在这里使用同步方式还是使用异步方式。从这两种方式产生的问题角度入手分析他们的优缺点:

不管同步还是异步都有可能造成缓存击穿问题,所以更新缓存的过程中最好进行一些排他动作以防止洪泛的发生。

主动更新、被动更新这些技术适应于不同的场景。它们各自有各自的优缺点,在技术设计阶段需要考虑实际的业务场景来决策到底使用那种方式合适。这个很多时候是需要设计人员的经验来进行决策。所以,任何一种软件设计过程都是一个决策和权衡的过程。

使用缓存的目标就是:通过减少对慢速服务的访问,来提速。所以在实际的缓存环境中,最主要的目标是减少访问慢速来达到使用缓存提速的目标。而在这个过程中可以使用的整体方案很多,可以通过不同事项的调整来完成自己的方案。

浅谈 Cache

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 四小的校长是谁图片 通川区北山镇中心学校校长是哪里人 阳江北惯平地小学校长是谁 湄江一小正校长是谁 东城小学校长是谁 麻烦懂洗衣机的朋友推荐一款1000-1500左右的全自动洗衣机,最好是海尔的,谢谢! citizen CL-S621C条码打印机出碳带很多,打印完后面板提示设定和错误(闪硕—— 怎么自己测瞳距 为什么用字母表示数不加单位 2020年临床助理医师考试报考条件是什么 宇宙少女恩潇的英文什么? 我是说承接船舶焊接需要什么证 如何包焊接工程、想从承包焊接做先 承接焊接工程怎么打广告词语吸引人 如何承包管道焊接工程, 计算机专业毕业生可以从事哪些工作 求吉田亚纪子(KOKIA)的I found the love 的假名歌词 求KOKIA唱的 《谢谢》的中文歌词 KOKIA《花宴》歌词及译文 求kokia<私?太阳>中日对照歌词 驾驶证档案编号每个城市不一样吗 九灵神域坐骑满阶多少级 如何分清金币和铜币? 五千块钱百分之一的点是多少? 5000的一成是多少 五千块钱百分之一,三十万是多少五千块钱百分之一,三十万要出百分多少? 5000元的百分1多少钱 五千块钱一比一点五怎么分 会计师考试考哪些课程 富有成效是哪个富 是什么意思拼音怎么读 义和团是什么意思 云南牛哒哒自助火锅地址 大渡岗茶厂1986年出过什么好茶 云南大渡岗普洱茶发展股份有限公司怎么样? 宁波隆园园林工程有限公司怎么样? 在宁波哪里可以找到可以找到挂靠的园林公司 宁波博创园林工程有限公司怎么样? 宁波东钱湖旅游度假区迅捷园林工程有限公司怎么样? 宁波亚东园林工程有限公司怎么样? 宁波园泽园林工程有限公司怎么样?