根据响应式 Web 设计结合负载均衡、分布式数据库等开发一套商品交易平台

本文主要是介绍根据响应式 Web 设计结合负载均衡、分布式数据库等开发一套商品交易平台,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

案例

【题目】

【问题 1】(5 分)

【问题 2】(16 分)

【问题 3】(4 分)

【答案】

【问题 1】解析

【问题 2】解析

【问题 3】答案

相关推荐


案例

        阅读以下关于 Web 系统架构设计的叙述,在答题纸上回答问题 1 至问题 3。

【题目】

        某电子商务企业因发展良好,客户量逐步增大,企业业务不断扩充,导致其原有的 B2C商品交易平台己不能满足现有业务需求。因此,该企业委托某软件公司重新开发一套商品交易平台。该企业要求新平台应可适应客户从手机、平板设备、电脑等不同终端设备访问系统,同时满足电商定期开展“秒杀”、“限时促销”等活动的系统高并发访问量的需求。面对系统需求,软件公司召开项目组讨论会议,制定系统设计方案。
        讨论会议上,王工提出可以应用响应式 Web 设计满足客户从不同设备正确访问系统的需求。同时,采用增加镜像站点、CDN 内容分发等方式解决高并发访问量带来的问题。李工在王工的提议上补充,仅仅依靠上述外网加速技术不能完全解决高用户并发访问问题,如果访问量持续增加,系统仍存在崩溃可能。李工提出应同时结合负载均衡、缓存服务器、Web 应用服务器、劳布提文件系统、分布式数据库等方法设计系统架构。
        经过项目组讨论,最终决定综合王王和李工的思路,完成新系统的架构设计。

【问题 1】(5 分)

        请用 200 字以内的文字描述什么是“响应式 Web 设计”,并列举 2 个响应式 Web 设计的实现方式。

【问题 2】(16 分)

        综合王工和李工的提议,项目组完成了新商品交易平台的系统架构设计方案。新系统架构图如图 5-1 所示。请从选项(a)-(j)中为架构图中(1)-(8)处空白选择相应的内容,补充支持高并发的 Web 应用系统架构设计图。

         (a) Web 应用层
         (b) 界面层
         (c) 负载均衡层
         (d) CDN 内容分发
         (e) 主数据库
         (f) 缓存服务器集群
         (g) 从数据库 
         (h) 写操作
         (i) 读操作
         (j) 文件服务器集群

【问题 3】(4 分)

        根据李工的提议,新的 B2C 商品交易平台引入了主从复制机制。请针对交易平台的特点,简要叙述引入该机制的好处。

【答案】

        本题考查 Web 系统架构设计相关知识及如何在实际问题中综合应用。此类题目要求考生认真阅读题目对现实系统需求的描述,结合 Web 系统设计相关知识、实现技术等完成 Web 系统分析设计。

【问题 1】解析

        响应式 Web 设计是指我们设计与开发的页面可以根据用户的行为和不同的设备环境做出相应的响应来调整页面的布局,以提供用户可感知的、流畅的阅读和操作体验。
        响应式 Web 设计具体的实现方式包括媒体查询(media query)、流式布局(弹性布局、动态布局)、液态图片(弹性图片)等。

        答案:        

        响应式 Web 设计是指我们设计与开发的页面可以根据用户的行为和不同的设备环境做出相应的响应来调整页面的布局,以提供用户可感知的、流畅的阅读和操作体验。
        实现方式:
        (1)流式布局
        (2)弹性布局加媒体查询

【问题 2】解析

        CDN 的全称是 Content Delivery Network,即内容分发网络,采取了分布式网络缓存结构,通过在现有的 Internet 中增加一层新的网络架构,将网站的内容发布到最接近用户的Cache 服务器内,通过 DNS 负载均衡的技术,判断用户来源就近访问Cache 服务器取得所需的内容,解决Internet 网络拥塞状况,提高用户访问网站的响应速度,如同提供了多个分布在各地的加速器,以达到快速、可冗余地为多个网站加速的目的。

         答案:

        (1)~(d)、(2)~(c)、(3)~(f)、(4)~(a)、
        (5)~(e)、(6)~(h)、(7)~(g)、(8)~(i)。

【问题 3】答案

        1、提升性能:交易平台要求高并发,主从复制方式一主多从,不同的用户请求可以从不同的从数据库读取数据,提高并发度。
        2、可扩展性更优:如果采用单台数据库服务器,则访问量持续增加时,数据库瓶颈暴露,且无法迅速解决问题。而主从结构可以快速增加从服务器数量,以满足需求。
        3、提升可用性:一主多从,一台从服务器出现故障不影响整个系统正常工作。
        4、相当于负载均衡:一主多从分担任务,相当于负载均衡。
        5、提升数据安全性:系统中的数据冗余存放多份,不会因为某台机器硬件故障而导致数据丢失。

相关推荐

【系统架构设计师】十三、软件可靠性(软件可靠性管理|软件可靠性设计|软件可靠性测试与评价)-CSDN博客文章浏览阅读796次,点赞25次,收藏11次。提高系统可靠性的技术可以分为避错(排错)技术和容错技术。避错是通过技术评审、系统测试和正确性证明等技术,在系统正式运行之前避免、发现和改正错误。容错是指系统在运行过程中发生一定的硬件故障或软件错误时,仍能保持正常工作而不影响正确结果的一种性能或措施。容错技术主要是采用冗余方法来消除故障的影响。软件容错技术主要包括恢复块方法、N版本程序设计、防卫式程序设计和冗余设计等多种方法。https://shuaici.blog.csdn.net/article/details/140516798系统架构设计师备考攻略-CSDN博客文章浏览阅读1.1k次,点赞30次,收藏19次。计算机软件资格考试是由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试。软考没有学历、专业、年龄、相关工作经验要求,你可以根据自身选择合适的去报名(也就是说你直接直接报高级),但是一次考试只能报一种。计算机软件资格考试纳入全国专业技术人员职业资格证书制度的统一规划,实行统一大纲、统一试题、统一标准、统一证书的考试办法,每年举行两次。通过考试获得证书的人员,表明其已具备从事相应专业岗位工作的水平和能力,用人单位聘任相应专业技术职务(助理工程师、工程师、高级工程师)。_系统架构设计师备考https://shuaici.blog.csdn.net/article/details/140975939

这篇关于根据响应式 Web 设计结合负载均衡、分布式数据库等开发一套商品交易平台的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1114993

相关文章

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

Golang使用etcd构建分布式锁的示例分享

《Golang使用etcd构建分布式锁的示例分享》在本教程中,我们将学习如何使用Go和etcd构建分布式锁系统,分布式锁系统对于管理对分布式系统中共享资源的并发访问至关重要,它有助于维护一致性,防止竞... 目录引言环境准备新建Go项目实现加锁和解锁功能测试分布式锁重构实现失败重试总结引言我们将使用Go作

C#实现文件读写到SQLite数据库

《C#实现文件读写到SQLite数据库》这篇文章主要为大家详细介绍了使用C#将文件读写到SQLite数据库的几种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录1. 使用 BLOB 存储文件2. 存储文件路径3. 分块存储文件《文件读写到SQLite数据库China编程的方法》博客中,介绍了文

Redis分布式锁使用及说明

《Redis分布式锁使用及说明》本文总结了Redis和Zookeeper在高可用性和高一致性场景下的应用,并详细介绍了Redis的分布式锁实现方式,包括使用Lua脚本和续期机制,最后,提到了RedLo... 目录Redis分布式锁加锁方式怎么会解错锁?举个小案例吧解锁方式续期总结Redis分布式锁如果追求

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

SQL Server数据库磁盘满了的解决办法

《SQLServer数据库磁盘满了的解决办法》系统再正常运行,我还在操作中,突然发现接口报错,后续所有接口都报错了,一查日志发现说是数据库磁盘满了,所以本文记录了SQLServer数据库磁盘满了的解... 目录问题解决方法删除数据库日志设置数据库日志大小问题今http://www.chinasem.cn天发

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char