20241017软考架构-------软考案例3答案

每日打卡题案例3答案

3.【2018年真题】 难度:一般

阅读以下关于分布式数据库缓存设计的叙述,在答题纸,上回答问题1至问题3.(共25分)

【说明】

某企业是为城市高端用户提供高品质蔬菜生鲜服务的初创企业,创业初期为快速开展业务,该企业采用轻量型的开发架构(脚本语言+关系型数据库)研制了一套业务系统。业务开展后受到用户普遍欢迎,用户数和业务数量迅速增长,原有的数据库服务器已不能满足高度并发的业务要求。为此,该企业成立了专门的研发团队来解决该问题。张工建议重新开发整个系统,采用新的服务器和数据架构,解决当前问题的同时为日后的扩展提供支持。但是,李工认为张工的方案开发周期过长,投入过大,当前应该在改动尽量小的前提下解决该问题。李工认为访问量很大的只是部分数据,建议采用缓存工具MemCache来减轻数据库服务器的压力,这样开发量小,开发周期短,比较适合初创公司,同时将来也可以通过集群进行扩展。然而,刘工又认为李工的方案中存在数据可靠性和一致性问题,在宕机时容易丢失交易数据,建议采用Redis来解决问题。在经过充分讨论,该公司最终决定采用刘工的方案。

【问题1】(9分)

在李工和刘工的方案中,均采用分布式数据库缓存技术来解决问题。请说明分布式数据库缓存的基本概念。

表4-1中对MemCache和Redis两种工具的优缺点进行了比较,请补充完善表4-1中的空(1)~(6)。

表4-1

复制代码
Memcache	Redis

数据类型 简单Key/Value结构 (1)

持久性 (2) 支持

分布式存储 (3) 多种方式,主从、sentinel、cluster等

多线程支持 支持 (4)

内存管理 (5) 无

事务支持 (6) 有限支持

【问题2】(8分)

刘工认为李工的方案存在数据可靠性和一致性的问题,请说明原因。

为避免数据可靠性和一致性的问题,刘工的方案采用Redis作为数据库缓存,请说明基本的Redis与原有关系数据库的数据同步方案。

【问题3】(8分)

请给出Redis分布式存储的2种常见方案和Redis集群切片的几种常见方式。

【参考答案】

试题分析:

【问题1】

(1)Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。

(2)不支持

(3)Memcache服务器需要通过hash一致化来支撑主从结构

(4)redis把任务封闭在一个线程中,不支持多线程

(5)使用stabAllcation进行内存管理,按照既定的内存,将内存切割成特定的长度来存储相应的数据

(6)弱支持,只能保证事务中的每个操作连续执行

【问题2】

读数据时,先读Redis中的数据,如果Redis没有,则从原数据库读取,并同步更新Redis数据。写数据时,先写入原数据库中,并同步更新至Redis中。

【问题3】

主从、Cluster

客户端分片、Twemproxy、RedisCluster、Proxy+RedisCluster

相关推荐
有梦不弃5 小时前
模块化单体架构设计方案:DDD + 六边形架构落地实践
后端·架构
ZENERGY-众壹5 小时前
500个工商业电站压垮数据库?海量光伏时序数据存储的架构取舍
数据库·架构·influxdb·光伏·光伏运维
Dr.kangder7 小时前
嵌入式处理器仿真技术——Hypervisor 原理与实践
服务器·嵌入式硬件·架构·嵌入式
2601_964840279 小时前
技术方案解析:4G 云边协同架构下,智能门禁系统的轻量化升级路径
架构
rhythm-ring10 小时前
《第3篇:BCM的“心脏与神经网络”——UJA1169(SBC)深度解析》
架构·汽车
漫谈数据智理11 小时前
从参考架构到可运行体系如何理解 IDSA 的最新进展
架构·高质量数据集
2601_9637491012 小时前
越华环保集团污水监测云边协同架构:数字化污水治理Modbus-MQTT链路实现方案
人工智能·架构
XR12345678812 小时前
校园网整体架构选型:从核心到接入哪家方案更优?
架构
智购科技自动售卖机厂家12 小时前
从STM32到RK3588——自动售货机嵌入式主控方案的架构演进~YH
stm32·嵌入式硬件·物联网·架构·lua·零售·symfony
黄华SJ520it13 小时前
二二复制定点裂变双轨商城系统开发:原理、架构与实战指南
运维·小程序·架构·系统开发