zoukankan      html  css  js  c++  java
  • 《xxx重大需求征集系统的》可用性和可修改性战术分析

    阅读《大型网站技术架构;核心与案例分析》,第五,六章,结合《河北省重大需求填报系统》,列举实例分析采用的可用性和可修改性战术,将上述内容撰写成一篇1500字左右的博客阐述你的意见。

    网站的可用性是一个网站的基础,网站的页面能完整呈现,在最终用户面前,需要经过很多个环节,任何一个环节出了问题,就能导致整个网站页面不可访问,所以我们衡量一个网站,要用一个网站的可用性来度量它,可有一项指标是网站架构设计的重要指标,对外是服务承诺,对面试考核指标,成人性指标是网站或者产品的整体考核指标,具体到每个工程师的考核,更多的是故障分,河北省重大需求填报系统在考核中也是这样的,我们不是去看他有多少个能用的,还是看还有多少个不能用,包括出了故障之后,多快时间能够恢复使用。

    高可用的网站架构通常遵循三层基础分层架构模型,介绍应用层,服务层和数据层;各层之间有相互的独立性,应用场合主要负责业务逻辑处理,无偿负责提供可复用的服务;数据层负责数据的存储和访问,一般网站的架构只有这三种,我们编写的河北省重大需求填报系统也是这样的,不同的业务产品部署在不同的服务器集群上,这些产品又会依赖一些公用的复用业务,比如登录注册,账户管理服务等,至于数据成数据库服务,文件服务,缓存服务,搜索服务等数据储存与访问服务,都部署在各自独立的服务器集群上,

      我们提供一个网站的服务需要的提供高可用的服务,可复用的服务模块,为业务产品提供基础公共服务,大型网站中,这些服务通常都独立分布式部署,被具体应用远程调用。除此之外,还可以用几下几点来实现服务策略,分时管理,超时设置,异步调用服务,降级幂等性设计,

    分级管理是将服务器进行分级管理,核心应用和服务优先使用,最好的硬件,在响应速度上也格外迅速。超时设置由于服务器宕机线程死锁的原因,可能导致程序对服务端掉去市区享用,进而导致用户请求得不到响应,同时占用资源,不利于从事将请求返回正常的服务器上,服务降级,在网络服务高峰期,服务可能因为大量的并发调用而性能下降,所以我们有阶段性的降级服务一事,拒绝,关闭功能。而我们的河北省重大需求填报系统在这一方面的考虑上,可以说是一点儿都没有,首先我们没有设想到有多个超过几千个人来同时登录这个程序而且也没有相应的硬件技术来实现相应的可用,这也可以是我们将来如果真的搞这一个应用所研究努力的方向,比如说我们可以同时提供多个主机,在一个主机宕机之后,还可以用其他的主机来接替,这样就大大提高了可用性,而且还要进行相应的数据备份这就涉及到了高可用的数据。

    对于许多网站而言,数据是极其宝贵的物质资产,硬件可以购买,软件可以重写,但是数据是不可以的,我保存这些数据,不丢失就成为了重中之重,我们要求数据要有持久性,可访问性和一致性,持久性是指数据可以持久储存,可访问性是指数据在不同的数据储存设备上可以访问,一致性,是指各个地方的数据是保持一致的,这样就能够让我们的数据尽可能最大的还原,最基本的数据不会导致错误,安保系统对于数据这方面,连最简单的备份甚至都没有我这也导致了我们的程序可用性十分的低,所以从以上两个方面上来说,河北省重大需求管理系统如果将来真的要是写的话要从硬件和数据储存两方面都要努力,才能达到可用性的提高。

    而我们也要关注网站的伸缩性,一般来说,网站的伸缩性可分为两类一类是根据工程进行物理实现伸缩,一类是单一功能实现集群伸缩。伸缩设计是网站架构师必备的能力。伸缩架构其实也是很简单的,因为有很多的网站都是可伸缩的,有很多的案例可以借鉴,一个具有良好伸缩性架构的网站及设计,也总是走在发展的前面,在业务需要处理更多的服务和访问时,就已经做好了准备,在业务需要时,只需要购买或租用服务器,实现简单部署就可以了,技术人员可以高枕无忧,所以说,如果我们需要认真的做一个程序时,一定首先要考虑它可伸缩性。

     ,

  • 相关阅读:
    [Windows内核分析]KPCR结构体介绍 (CPU控制区 Processor Control Region)
    利用C++实现模块隐藏(R3层断链)
    [动态规划]最少硬币问题
    [动态规划]高数Umaru系列(9)——哈士奇(背包问题)
    Windows中利用共享内存来实现不同进程间的通信
    [分治算法]骨牌铺方格
    [分治、递推法、动态规划]最大子段和
    [分治算法]因式分解
    013 CephFS文件系统
    012 Ceph多区域网关
  • 原文地址:https://www.cnblogs.com/anjiu/p/8627220.html
Copyright © 2011-2022 走看看