河北省重大系统征集系统案例分析

    

网站的可用性描述网站可有效访问的特性,相比于网络的其余非功能的特性,网站的可用性更能牵动人们的神经。由于,大型网站若是发生不可用的事故,将直接的影响公司的形象及利益,因此,网站的可用性及其重要。正如《大型网络技术架构:核心原理与案例分析》中提到,百度被黑客攻击,其DNS域名被劫持,致使百度全站长达数小时不可访问。对百度的影响力很大。一时成为了新闻热点。对于网站的可用性,须要通过多个环节来考核,任意环节出问题,都将会影响到整个网络。而对于《河北重大需求技术征集系统》而言,本身所作的这个小型网站,根本是经不起“网络可用性的度量与考核”,因此为了实现这属性,就要实现可用性战术。同理,也要实现可修改性战术。一般为了提升系统的可用性,会采用较昂贵的软硬件设备。便是高可用的网站架构,其主要目的就是保证服务器硬件故障时服务依然可用、数据依然保存并可以被访问。实现的手段是数据和服务的冗余备份及失效转移。数据库

    首先,能够从网站架构出发。如经典型的分层模型MVC,即应用层、服务层、数据层。应用层主要负责具体业务逻辑处理;服务层负责提供可复用的服务;数据层负责数据的存储与访问。在复杂的大型网站架构中,划分的粒度会更小、更详细,结构更加复杂,服务器规模更加庞大,但仍是可以将其划分到应用层、服务层和数据层。缓存

    其次,利用Session存储和访问要求。在《河北重大需求技术征集系统》中,须要记录用户提交过的需求表,以及删除过的、修改过的、被审核过的需求表。而这些信息都是状态不一样的同种信息。这些运用到了数据库,在这些需求表的基础上进行包装,使其符合Session的存储和访问的要求。对于有状态的Session服务器,比较简单的方法是利用分布式缓存、数据库等,在这些产品的基础上进行包装,使其符合Session的存储和访问要求。若是业务场景对Session管理有比较高的要求,好比利用Session服务集成单点登陆、用户服务等功能,则须要开发专门的Session服务管理平台。服务器

    对于异步调用,这一点,《河北重大需求技术征集系统》未完成此项要求。如提交一个新用户注册请求,应用须要调用及格服务,这几个服务之间并未实现异步调用的方式。网络

    其次,还包括数据备份。《河北重大需求技术征集系统》对应的数据库,借助相应的数据库工具,可以很好的实现数据库的备份的工做。数据备份是一种古老而有效的数据保护手段,早起的数据备份手段主要是数据冷备,即按期将数据复制到某种存储介质上并物理存档保管,若是系统存储损坏,name就从冷备的存储设备中恢复数据。架构

    正如这门书中所举例:京东网。因为大量的用户访问,致使网站服务的不可用,这其实正是缺乏可用性方面。异步

    对于网站架构的伸缩性设计,包括根据功能进行物理分离实现伸缩和单一功能经过集群实现伸缩。这些,对于《河北重大需求技术征集系统》来讲,仍是大材小用。其伸缩性每每是和可用性、正确性、性能等耦合在一块儿,改善伸缩性也可能会影响网站的其余特性。因此,能够加大对伸缩性的关注度。分布式

    扩展性,是指现有系统影响最小的状况下,系统功能可持续扩展或提高的能力。表如今系统设施稳定不须要常常变动,应用之间较少依赖和耦合,对需求变动能够敏捷响应。伸缩性,是指系统可以经过增长(减小)自身资源规模的方式加强(减小)本身计算处理事务的能力。在网站架构中,一般利用集群的方式增长服务器数量、提升系统的总体食物吞吐能力。对于扩展性和伸缩性,这两个概念不是特别能分得清楚。都是与可用性相关,与软件质量属性相关的。工具

    可修改性是有关变动的成本问题,它提出两个关注点:能够修改什么(制品)?什么时候进行变动以及由谁进行变动(环境)?以个人理解,是当修改外界的设计时,不影响内部的逻辑。在《河北重大需求技术征集系统》中,是主要是用到MVC模式,将各个功能块分层。性能

相关文章
相关标签/搜索