当前位置:首页 > 短网址资讯

大型网站技术架构(三)——架构核心要素

www.ft12.com9年前 (2017-08-05)短网址资讯1270

所谓架构,一种通俗的说法就是“最高层次的规划,难以改变的决定”,这些规划和决定奠定了事物未来发展的方向和最终的蓝图。

      

而软件架构即“有关软件整体结构与组件的抽象描述,用于指导大型软件系统各方面的设计”。一般来说软件架构需要关注性能、可用性、伸缩性、扩展性和安全性这5个架构要素。


1. 性能

     

性能是网站架构设计的一个重要方面,任何软件架构设计方案都必须考虑可能带来的性能问题。也正因为性能问题几乎无处不在,所以优化网站性能的手段也非常多:

    

浏览器端:可以通过浏览器缓存、页面压缩传输、合理布局页面、减少Cookie传输等手段,甚至可以使用CDN加速功能。

    

应用服务器端:可以使用服务器本地缓存和分布式缓存,也可以通过异步操作方式来加快响应,在高并发请求的情况下,可以将多台应用服务器组成一个集群共同对外服务,提高整体处理能力,改善性能。

    

数据库服务器端:可用使用索引、缓存、SQL性能优化等手段,还可以使用NoSQL数据库来优化数据模型、存储结构等。

    

衡量网站性能有一系列指标,重要的有响应时间、TPS、系统性能计数器等,通过这些指标以确定系统设计是否达到目标。


2. 可用性

    

可用性即能够不间断提供服务的时间。几乎所有网站都承诺7×24小时可用,但事实上任何网站都不可能达到完全的7×24,总会有一些故障时间,扣除这些故障时间,就是网站的可用时间。一些大型网站可以做到4个9以上的可用性,也就是99.99%。

   

网站高可用的主要手段就是冗余,应用部署在多台服务器上同时提供服务,数据存储在多台服务器上相互备份,任何一台服务器都不会影响应用的整体可以,通常的实现手段即把多台服务器通过负载均衡设备组成一个集群。

   

衡量一个系统架构设计是否满足高可用的目标,就是假设系统中任何一台或者多台服务器宕机时,以及出现各种不可预期的问题时,系统整体是否依然可用。


3. 伸缩性

      

大型网站需要面对大量用户的高并发访问和存储海量数据,网站通过集群的方式将多台服务器组成一个整体共同提供服务。所谓伸缩性是指通过不断向集群中加入服务器的手段来缓解不断整体上市用户并发访问压力和不断增长的数据存储需求。

      

衡量架构伸缩性的主要标准就是是否可用多台服务器构建集群,是否容易向集群中添加新的服务器。加入新的服务器后是否可以提供和原来的服务器无差别的服务。集群中可容纳的总服务器数量是否有限制。


4. 扩展性

       

不同于其他架构要素主要关注非功能性需求,网站的扩展性架构直接关注网站的功能需求。网站快速发展,功能不断扩展,如何设计网站的架构使其能够快速响应需求变化,是网站可扩展架构的主要目标。

       

衡量网站架构扩展性好坏的主要标准就是在网站增加新的业务产品时,是否可以实现对现有产品透明无影响,不同产品之间是否很少耦合等。

       

网站可扩展架构的主要手段是事件驱动架构和分布式服务。

       

事件驱动通常利用消息队列实现,通过这种方式将消息生产和处理逻辑分隔开。

       

服务器服务则是将业务和可复用服务分离开来,通过分布式服务框架调用。新增加产品可用通过调用可复用的服务来实现自身的业务逻辑,而对现有产品没有任何影响。


5. 安全性

     

互联网是开发的,任何人在任何地方都可以访问网站。网站的安全架构就是保护网站不受恶意访问和攻击,保护网站的重要数据不被窃取。

     

衡量网站安全架构的标准就是针对现存和潜在的各种攻击和窃密手段,是否有可靠的应对策略。


出处:http://blog.csdn.net/chaofanwei/article/details/27046795


版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢。



扫描二维码推送至手机访问。

版权声明:本文由短链接发布,如需转载请注明出处。

本文链接:https://www.ft12.com/article_380.html

分享给朋友:

相关文章

连内衣店、按摩馆都被大量直播 画面让人心惊

连内衣店、按摩馆都被大量直播 画面让人心惊

近日,网络上出现多地学校教室、宿舍的直播画面,画面中人物的举动都较为清晰,且包含声音,一些当事人对直播并不知情。不仅是学校,一些直播的镜头还对准了游泳池、盲人按摩馆、酒店大堂、内衣店... 直播随意看:学校、游泳池、盲人按摩馆、酒店大…

短链接URL系统是怎么设计的?

短链接URL系统是怎么设计的?

最实在的回答实现一个算法,将长地址转成短地址。实现长和短一一对应。然后再实现它的逆运算,将短地址还能换算回长地址。这个回答看起来挺完美的,然后候选人也会说现在时间比较短,如果给我时间我去找这个算法就解决问题了。但是稍微有点计算机或者信息论常…

如何才能让网络爬虫抓取短链接?

网络爬虫(又被称爲网页蜘蛛,网络机器人),是一种依照一定的规则、自动的抓取万维网信息的顺序或许脚本。通常它爲搜索引擎从万维网上下载网页,是搜索引擎的重要组成局部。抓取战略链接的抓取战略可以分爲深度优先、广度优先和最佳优先三种。1、深度化先捜…

在线教育企业7成亏损,15%濒临倒闭,你如何突围?

在线教育企业7成亏损,15%濒临倒闭,你如何突围?

[ 亿欧导读 ] 四月暮春,又到了一年一度在线教育公司交作业的时期,无论是自己晒成绩,还是第三方机构出评估,我们看到报表里的在线教育行业都是欣欣向荣、前景喜人,但真实情况如何?在线教育市场规模增幅迅猛,2019年将达2692.6亿…

AI能让科学研究实现自动化吗?

科学进展受限于人类思考的速度,将其外包给人工智能或许能够改变这一切。撰文:Ahmed Alkhateeb翻译:张雪科学正陷于数据危机之中。去年,仅在生物医学领域就有超过120万篇新论文发表,这令同行评审的生物医学论文总数达到了2600万篇。…

智慧城市建设值得思考的三大趋势

智慧城市建设值得思考的三大趋势

摘要:才智城市是一个跨产业、跨领域、跨组织、跨技术的概念,全球对才智城市的建设与发展都在处在理论到实践的探索期间。才智城市的建设需要多部门、多组织的协同创新,由众多的聚焦某类问题解决的创新企业集合来共同推动。Amit Garg从投资人的角度…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。