阅读《大型网站技术架构:核心原理与案例分析》第五、六、七章,结合《XXX重大技术需求征集系统》,列举实例分析采用的可用性和可修改性战术,将上述内容撰写成一篇1500字左右的博客阐述你的观点。
这三章主要讲述的是网站的可用性、伸缩性和可扩展性。
首先,网站的可用性描述网站可有效访问的特性,相比于网站的其他非功能特性,网站的可用性更容易引起人们的注意,尤其是大型网站的可用性,如果大公司的网站出现错误或者不能登录上去,不但会影响人们的浏览,而且也会给公司带来不可想象的经济损失。但是要保证一个网站永远完全可用几乎是一件不可能完成的任务。我们通过一个神奇的数字9来度量网站可用性,采用故障分来考核网站可用性。可用性指标是网站架构设计的重要指标,网站可用性看得见,摸得着,跟技术、运营、相关各方的绩效考核息息相关。一个典型的网站设计遵循基本分层架构模型即应用层、服务层、数据层。应用层主要负责具体业务逻辑处理;服务层负责提供可复用的服务;数据层负责数据的存储和访问。网站的可用性架构设计不但考虑实际的硬件故障引起的宕机,还要考虑网站升级发布引起的宕机。高可用的服务策略包括分级管理、超时设置、服务降级(关闭非核心服务)等。高可用的数据是最宝贵的资产,保证数据存储高可用的手段主要是数据备份和失效转换机制。数据备份可以实现数据完全的持久化,失效转换机制是为了保证系统可用。保证网站高可用,万无一失,是一个艰难的过程,还需要更多努力。
相比较我们在去年的软件工程概论的课程中所编写的《XXX重大技术需求征集系统》来说,可用性基本为0,所编写的这个系统,只是我们个人的成果而已,对于其中的联网、测试、发布等并没有进行相应的操作,总的来说就是一个空壳子系统,并没有很大的实际应用。同时,自身的系统还需要不断的完善,良好的界面风格,简单便捷的操作,合理的结构布局,以及适当的错误信息提示和网站的反应速度都要进一步的优化。
其次,描述的就是网站的伸缩性。所谓网站的伸缩性,指不需要改变网站的软硬件设计,仅仅通过改变部署的服务器数量就可以扩大或者缩小网站的服务处理能力。要实现网站的可伸缩性,关键技术就在于如何构建良好的服务器集群。要达到良好的目标,就要求每次扩容和减少服务器时,对整个网站的影响是最小的。CAP原理就是选择强化分布式存储系统的可用性和伸缩性,而在某种程度上放弃一致性。CAP原理对于可伸缩的分布式系统设计具有重要意义,不恰当地迎合各种需求,可能会使设计进入两难境地,难以为继。我们的系统有大量的统计数据。我们的网站随时都有可能进行修改,比如发布新功能,这时就需要在服务器上关闭原有的应用,重新部署新的应用,整个过程要求不影响用户的使用。为了把对用户的影响降低到最小,通常使用发布脚本来完成发布。经过严格的测试,软件部署到服务器还是会出现问题,主要原因就是测试环境和线上环境并不相同,所以我们在网站发布时,要把测试通过的代码先发布到预发布机器上,确认系统没有问题后才正式发布。
《XXX重大技术需求征集系统》的伸缩性为0,其中涉及到了服务器的数量,基本就是在个人机上来运行的,没有尝试过在多台服务器上运行,所以对于网站的伸缩性了解的不多。
最后,讲解的是网站的可扩展性。对于可扩展性来说,是随需而变的。有的网站可以随时发布,新功能随时快速上线,而有的必须规定发布日,究其原因,则依赖于网站的扩展性架构设计。扩展性和伸缩性不同。扩展性是指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力。它符合系统架构设计层面的开闭原则,架构设计考虑到了系统未来的功能扩展,即当系统需要增加新的功能时,不需要对系统的原有代码进行编辑和修改或者不需要对源代码进行较大的改动。其设计的核心思想是模块化,并在此基础上,降低模块的耦合性,提供模块的复用性。
这一特性对于所写的《XXX重大技术需求征集系统》来说,还是有一些熟悉的,因为在编写的过程中,对系统进行了多次的修改,页面的设计、功能的增加、角色的管理、按键以及相应的提示信息都根据所给的编写文档进行了多次的修改,每次都尽量使新增和修改的代码在少数,能最大程度的减少自己的工作量。
网站的可用性、伸缩性和可扩展性,在很多方面影响着网站的质量,一个优秀的网站,不仅能给用户带来很好的体验,也可以为公司创造出巨大的利润,但是要想把网站维护的更加完美,还需要不断的去努力,公司的资金投入、工程师认真负责的态度以及相应的运气,都是必不可少的条件。
阅读《大型网站技术架构:核心原理与案例分析》第五、六、七章,结合《XXX重大技术需求征集系统》,列举实例分析采用的可用性和可修改性战术,将上述内容撰写成一篇1500字左右的博客阐述你的观点。的更多相关文章
- 大型网站技术架构 核心原理与案例分析 pdf
需要的小伙伴拿去,哈哈.百度云链接:https://pan.baidu.com/s/1hsuiM3q
- 《XX重大技术需求征集系统》的可用性和可修改性战术分析
题目:阅读<大型网站技术架构:核心原理与案例分析>第五.六章,结合<某重大技术需求征集系统>,列举实例分析采用的可用性和可修改性战术,将上述内容撰写成一篇1500字左右的博客阐 ...
- 阅读《大型网站技术架构》,并结合"重大需求征集系统"有感
今天阅读了<大型网站技术架构:核心原理与案例分析>的第五.六.七章.这三张主要是讲述了一个系统的可用性.伸缩性和可扩展性.而根据文中所讲述的,一个系统的可用性主要是体现在这个系统的系统服务 ...
- 《大型网站技术架构:核心原理与案例分析》【PDF】下载
<大型网站技术架构:核心原理与案例分析>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230062557 内容简介 本书通过梳理大型网站 ...
- 《XXX重大技术需求征集系统》的可用性和可修改性战术分析
在网站的界面完整有效的呈现在最终用户面前前,其中经历的每一环节出现问题都会导致网站页面不可访问.原因如,如DNS被劫持.网站交换机失效,硬盘损坏,网卡松掉,机房停电等都可能导致网站不可用(网站故障)情 ...
- [windows篇] 使用Hexo建立个人博客,自定义域名https加密,搜索引擎google,baidu,360收录
为了更好的阅读体验,欢迎阅读原文.原文链接在此. [windows篇] 使用Hexo建立个人博客,自定义域名https加密,搜索引擎google,baidu,360收录 Part 2: Using G ...
- Asp.Net MVC 进阶篇:路由匹配 实现博客路径 和文章路径
Asp.Net MVC 进阶篇:路由匹配 实现博客路径 和文章路径 我们要实现 通过路由 匹配出 博客地址 和博客文章地址 例如下面的这两个地址 //http://www.cnblogs.com/ma ...
- 为了确认是您本人在申请搬家,请在原博客发表一 篇标题为《将博客搬至CSDN》的文章,并将文章地址填写在上方的"搬家通知地址"中
为了确认是您本人在申请搬家,请在原博客发表一 篇标题为<将博客搬至CSDN>的文章,并将文章地址填写在上方的"搬家通知地址"中
- web技术发展历程--读《大型网站技术架构_核心原理与案例分析》
1 早期的web服务 2 CGI程序的出现.发展.凋零到MVC的兴起 CGI:通用网关接口技术. 随着CGI技术的出现,web服务端可以通过不同的用户请求产生动态页面内容. web服务器将请求数据交给 ...
随机推荐
- matplotlib显示栅格图片
参考自Matplotlib Python 画图教程 (莫烦Python)(13)_演讲•公开课_科技_bilibili_哔哩哔哩 https://www.bilibili.com/video/av16 ...
- Java中Map用法详解
原文地址http://blog.csdn.net/guomutian911/article/details/45771621 原文地址http://blog.csdn.net/sunny2437885 ...
- php等守护进程监控脚本(转载 http://www.9958.pw/post/php_script_scan)
此脚本用户守护监控进程的执行情况,因为有的时候,我们用各类开发语言做的守护进程可能会因为一些特殊情况被退出,所以此脚本就是为了重启这些进程 代码: #!/bin/bash EMAIL='9958_pw ...
- iOS APP 新增表情包拓展
图示教程如下:
- netty11---管道
客户端: package com.server; import java.net.Socket; public class Client { public static void main(Strin ...
- 企业级hbase HA配置
1 HBase介绍HBase是一个分布式的.面向列的开源数据库,就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类 ...
- ubuntu 14.04 163镜像
1.备份原来/etc/apt/sources.list 2.以下内容覆盖原来文件内容 deb http://mirrors.163.com/ubuntu/ trusty main restricted ...
- 机器学习与R语言:NB
#---------------------------------------- # 功能描述:演示NB建模过程 # 数据集:SMS文本信息 # tm包:维也纳财经大学提供 #----------- ...
- JAVA学习笔记之JAVA 对象引用以及赋值
关于对象与引用之间的一些基本概念. 初学Java时,在很长一段时间里,总觉得基本概念很模糊.后来才知道,在许多Java书中,把对象和对象的引用混为一谈.可是,如果我分不清对象与对象引用, 那实在没 ...
- wix toolset 用wixui 默认中文
light.exe .\test.wixobj -ext WixUIExtension -ext WixUtilExtension -cultures:zh-CN