首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下关于分布式数据库缓存设计的叙述,在答题纸上回答问题。 【说明】 某初创企业的主营业务是为用户提供高度个性化的商品订购业务,其业务系统支持PC端、手机App等多种访问方式。系统上线后受到用户普遍欢迎,在线用户数和订单数量迅速增长,原有的关系数据库服务
阅读以下关于分布式数据库缓存设计的叙述,在答题纸上回答问题。 【说明】 某初创企业的主营业务是为用户提供高度个性化的商品订购业务,其业务系统支持PC端、手机App等多种访问方式。系统上线后受到用户普遍欢迎,在线用户数和订单数量迅速增长,原有的关系数据库服务
admin
2021-03-26
102
问题
阅读以下关于分布式数据库缓存设计的叙述,在答题纸上回答问题。
【说明】
某初创企业的主营业务是为用户提供高度个性化的商品订购业务,其业务系统支持PC端、手机App等多种访问方式。系统上线后受到用户普遍欢迎,在线用户数和订单数量迅速增长,原有的关系数据库服务器不能满足高速并发的业务要求。
为了减轻数据库服务器的压力,该企业采用了分布式缓存系统,将应用系统经常使用的数据放置在内存,降低对数据库服务器的查询请求,提高了系统性能。在使用缓存系统的过程中,企业碰到了一系列技术问题。
该系统使用过程中,由于同样的数据分别存在于数据库和缓存系统中,必然会造成数据同步或数据不一致性的问题。该企业团队为解决这个问题,提出了如下解决思路:
应用程序读数据时,首先读缓存,当该数据不在缓存时,再读取数据库;应用程序写数据时,先写缓存,成功后再写数据库;或者先写数据库,再写缓存。
王工认为该解决思路并未解决数据同步或数据不一致性的问题,请用100字以内的文字解释其原因。
王工给出了一种可以解决该问题的数据读写步骤如下:
读数据操作的基本步骤:
1.根据kev读缓存;
2.读取成功则直接返回;
3.若key不在缓存中时,根据key(a);
4.读取成功后,(b);
5.成功返回。
写数据操作的基本步骤:
1.根据kev值写(c);
2.成功后(d);
3.成功返回。
请填写完善上述步骤中(a)~(d)处的空白内容。
选项
答案
存在双写不一致问题,在写数据时,可能存在缓存写成功,数据库写失败,或者反之,从而造成数据不一致。当多个请求发生时,也可能产生读写冲突的并发问题。 (a)从数据库中读取数据或读数据库 (b)更新缓存中kev值或更新缓存 (c)数据库 (d)删除缓存key或使缓存key失效或更新缓存(key值)
解析
在原有方案中,应用程序写数据时,先写缓存,成功后再写数据库;或者先写数据库,再写缓存。这里存在双写不一致问题。不管先写缓存还是数据库,都会存在一方写成功,另一方写失败的问题,从而造成数据不一致。当多个请求发生时,也可能产生读写冲突的并发问题。
王工的解决思路是:读操作的顺序是,先读缓存,如果数据在缓存中,则直接返回,无须数据库操作;如果数据不在缓存,则读数据库,如成功,则更新缓存,如失败,则返回无此数据。
读操作主要解决查询效率问题。写操作的顺序是先写数据库,如失败,则返回失败;如成功,则更新缓存。更新缓存可能的方式有:如缓存中无此key值,则在缓存中不作处理;如缓存中存在此key值,则删除key值或使该key值失效。写操作的顺序主要防止数据库写操作失败,缓存更新为内存操作,失败的概率很小。同时删除key或使key失效,则在下一次查询该key值时,会发起数据库读操作,并同步更新缓存中的key值,从而最大程度上避免双写不一致问题。
转载请注明原文地址:https://kaotiyun.com/show/pAQZ777K
本试题收录于:
系统架构师下午案例分析考试题库软考高级分类
0
系统架构师下午案例分析考试
软考高级
相关试题推荐
定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。
.asp.net如何实现MVC模式,举例说明!
ASP.NET能在那些系统中运行?
输入一个链表的头结点,从尾到头反过来输出每个结点的值。链表结点定义如下:structListNode{intm_nKey;ListNode*m_pNext;};
输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。输出861057911。
已知一台计算机的IP地址是192.168.1.159,搜索该计算机。
在IE中,请将Intetnet区域内站点的安全级别设置为“禁止ActiveX控件和插件运行”。
Thereareseveraltypesofpasswordmanagementapproachesusedbyidentitymanagementsystems.Whichofthefollowingreduceshe
Whattypeofinfrastructuralsetupisillustratedinthegraphicthatfollows?
TherearedifferentwaysthatoperatingsystemscancarryoutsoftwareI/Oprocedures.WhichofthefollowingisusedwhentheC
随机试题
下列属于计算机内部存储器的是()
不属于工程量清单项目工程量计算依据的是()。【2008年真题】
专用设备是指专门针对某一种或一类对象或产品,实现一项或几项功能的设备。其中,建材设备包括()。
评估幼儿的最佳方式是平时观察。()
电动车:摩托车:救护车
我国对外政策的基本立足点是()
设随机变量X服从参数为λ的指数分布,则
假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”,下面程序段的功能是:将temp.dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段),在下划线处应该填写的SQL语句是()。USE歌手
在窗体上画一个名称为Command1的命令按钮,并编写如下程序代码:PrivateConstNUMAsInteger=10PrivateSubCommand1_Click()DimaAsInteger,bAsInt
软件设计中模块划分应遵循的准则是()。
最新回复
(
0
)