阅读《大型网站技术架构:核心原理与案例分析》第五、六、七章,结合《河北省重大技术需求征集系统》,列举实例分析采用的可用性和可修改性战术,将上述内容撰写成一篇1500字左右的博客阐述你的观点。
阅读了《大型网站技术架构:核心原理与案例分析》的第五章,对可用性有了一定的了解,可用性的度量与考核。对高可用的网站架构有了一定的认识。互联网公司更多地采用PC级服务器、开源的数据库和操作系统,这些廉价的设备在节约成本的同时也降低了可用性,特别是服务器硬件设备,低价的商业级服务器一年宕机一次是一个大概率事件,而那些高强度频繁读写的普通硬盘,损坏的概率则要更高一些。不同的业务产品会部署在不同的服务器集群。每次网站发布都需要关闭服务,重新部署系统,整个过程相当于服务器宕机。
由于负载均衡在应用层实际上起到了系统高可用的作用,因此即使某个应用访问量非常少,只用一台服务器提供服务就绰绰有余,但如果需要保证该服务高可用,也必须至少部署两台服务器,使用负载均衡技术构建一个小型的集群。对Session复制 ,Session绑定 ,利用Cookie记录Session ,Session服务器有了新的认识。
高可用的软件质量保证,在网站运维实践中,除了网络、服务器等硬件故障导致的系统可用性风险外,还有来自软件系统本身的风险。对数据的监控采集。在阅读后自己上网了解到不是所有服务都可以异步调用,对于获取用户信息这类调用,采用异步方式会延长响应时间,得不偿失。对于那些必须确认服务调用成功后才能继续进行下一步的操作的应用也不适合异步调用。
第六章介绍到网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力。“伸”即网站的规模和服务器的规模总是在不断扩大。对网站的伸缩性设计分类有了一定的了解,对二者的功能区别有了一定的认识,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩。
伸缩性对于算法的应用还是很多的,一致性Hash算法是分布式缓存的核心理论。CAP原理就是选择强化分布式存储系统的可用性和伸缩性,而在某种程度上放弃一致性。对于算法的理解和使用我还有很多欠缺,对算法的认识还是很狭窄。通过上网了解到大型网站总是部分使用DNS域名解析,利用域名解析作为第一级负载均很手段,即域名解析得到的一组服务器不是实际的Web服务器,而是同样提供负载均衡的内部服务器,这组内部服务器再进行负载均衡,请求分发到真实的Web服务器上。
第七章介绍了架构的可扩展。网站的扩展性架构:对现有系统影响最小的情况下,系统功能可持续扩展和提升的能力。扩展性就是对现有系统影响最小的情况下,系统功能可持续扩展和提升的能力。核心思想是模块化、降低模块间的耦合。模块通过分布式部署,独立的模块部署在独立的服务器上集群从物理上分离模块之间的耦合关系。
针对技术需求征集系统,在可用性上,进行错误检测,在数据操作和系统操作上可以进行限制提醒来避免错误,报表的填写格式,信息的录入,权限的分配等等,系统进行监控,针对错误进行返回,保证系统正常运行,避免错误的产生。
在可修改性上,紧紧抓住低内聚高耦合的核心思想,对系统分层,即使出现错误也可以针对不同层次进行及时的修改,做出最优的解决方案。
对于技术需求征集系统的架构,在方案上还有很多要了解学习的地方,会更多的去学习了解。
原文地址:https://www.cnblogs.com/ylx111/p/8633380.html