问题 问答题

阅读以下关于体系结构设计的叙述,根据要求回答问题。
[说明]
某大中型电子商务公司的主要业务是在线购物,包括书籍、服装、家电和日用品等。随着公司业务规模不断增大,公司决策层决定重新设计并实现其网上交易系统。PH软件公司承担了该项目软件开发任务,负责系统开发的杜工和赵工分别给出了两种不同的设计方案,分别如图1和图2所示。
图1


图2


公司的架构师和开发者针对这两种设计方案,从服务器负载情况、业务逻辑的分离性、系统可靠性,以及实现简单性等方面进行讨论与评估,综合考虑最终采用了赵工给出的方案。

[问题1]
结合你的系统架构设计经验,请分析比较杜工、赵工两种方案的优点和不足,将下表中(1)~(6)空缺处的内容填写完整。
[*]

答案

参考答案:本问题主要考查体系结构设计需要注意的问题。根据图1和图2给出的拓扑结构可知,图1给出的体系结构代表了一种典型的基于数据库服务器的动态内容发布结构,这种结构在服务器端设置了一台Web服务器和一台数据库服务器。在这种体系架构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在Web应用服务器端(Server)实现。Web服务器通过应用程序的支持(通常采用ASP、JSP等脚本语言,比较简单),就可以给用户提供动态的信息服务,通过定制页面模板,添加到后台数据库中的信息可以及时发布给客户。这种将浏览器与Web服务器、应用服务器三者分开的架构风格,可跨平台操作,具有良好的开放性和可扩充性,便于系统升级、扩展和维护。但是,在这种架构下,Web服务器需要同时负责业务逻辑的处理和数据库访问,负载很较重;业务逻辑代码和其他程序代码全部在Web服务器中,不能做到业务逻辑代码与其他代码分离,且其中任何一个环节出错,都会导致Web服务器宕机,系统可靠性较差。
图2给出的是一种分布式的Web应用架构。与图1的架构风格相比,在Web服务器和后台数据库服务器之间增加了一层应用服务器。这是一种比较先进的架构模式,通过Web服务器处理用户请求,应用服务器处理业务逻辑与数据库访问,负载较为均衡。但是这种架构模式需要将脚本语言与面向对象编程语言相结合,相对复杂。由于增加了中间层应用服务器,因此可以将业务逻辑和数据库连接等放置到中间层上,不但减轻了Web应用服务器的负担,而且还可以做到业务逻辑代码与其他程序代码之间的分离。多个应用服务器的存在也可以提高访问性能,并增加系统的可靠性。
整理以上分析内容,可得到如下表所示的两种架构方案各自的优点和不足。

选择题
多项选择题