1、架构评估中的质量属性
① 性能,是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理的事件的个数。
② 可靠性,是软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统的功能特性的基本能力。
③ 可用性,是系统能够正常运行的时间比例。
④ 安全性,是指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。
⑤ 可修改性,是指能够快速地以较高的性价比对系统进行变更的能力。
⑥ 功能性,是系统能完成所期望的工作的能力。
⑦ 可变性,是指架构经扩充或变更而成为新架构的能力。
⑧ 互操作性,作为系统组成部分的软件不是独立存在的,通常与其他系统或自身环境相互作用。
(a) 用户界面支持用户的个性化定制; 【互操作性】
(b) 系统需要支持当前主流的标准和服务,特别是通信协议和平台接口;【互操作性】
(c) 用户操作的响应时间应不大于3秒,竞价板块不大于1秒;【性能】
(d) 系统具有故障自行诊断和快速恢复能力;【可靠性】
(e) 用户密码需要加密传输;【安全性】
(f) 系统需要存储不少于10T的附件;【性能】
(g) 用户操作停滞时间超过定时限需要重新登录验证;【安全性】
(h) 系统能识别供应商异常的报价并防止干扰评选;【可修改性】
(i) 系统在过载时竞价功能可降级,保证发布和公示不受影响。【可用性】
2、瘦客户端与胖客户端相比有以下优势:
安全性:瘦客户端的安全性较高,业务逻辑在服务端。
灵活性:瘦客户端的灵活性较高。
系统升级与维护:瘦客户端的系统升级与维护成本较低。
不足:
性能弱:由于瘦客户端的大部分工作都在服务器端进行,服务器的负担很重。
功能简单:瘦客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作由服务器承担。
网络依赖:瘦客户端必须总是具有网络连接才能使用。
4、MVC架构的脆弱性主要表现在:
(1)MVC架构的复杂性带来脆弱性。MVC架构增加了系统结构和实现的复杂性。比如说一个简单的界面,如果严格遵循MVC方式,使得模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
(2)视图与控制器间紧密连接的脆弱性。视图与控制器是相互分离但却是联系紧密的部件,没有控制器的存在,视图应用是很有限的。反之亦然,这样就妨碍了它们的独立重用。
(3)视图对模型数据的低效率访问的脆弱性。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问也将损害操作性能。
技术 | 描述 | 常见支持软件 |
负载均衡 | 采用软件级和硬件级负载均衡实现分流和后台减压 | HAProxy、LVS |
缓存服务器 | 存储静态文件、减少网络交换量、加速响应请求 | Squid、Memcached |
分布式文件系统 | 文件存储系统、快速查找文件 | FastDFS、HDFS |
Web应用服务器 | 加速 对请求进行处理 | JBoss、Tomcat、Jetty |
分布式数据库 | 缓存、分割数据、加速数据查找 | MongoDB、Mysql |
5、针对 B2C 商务购物平台的网络威胁始终存在,鉴别的基本目的是防止其他实体占用和独立操作被鉴别实体的身份。鉴别的方式主要有哪些?
(1)已知的,如一个秘密的口令。
(2)拥有的,如IC卡、令牌等。
(3)不改变的特性,如生物特征,如人脸、指纹。
(4)相信可靠的第三方建立的鉴别(递推),如支付宝快捷登录、实名认证等
(5)环境(如主机地址等)。