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

news/2024/5/16 12:05:48/文章来源:https://blog.csdn.net/weixin_34408624/article/details/92656027

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

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

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

1、性能

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

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

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

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

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

2、可用性

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

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

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

3、伸缩性

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

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

4、扩展性

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

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

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

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

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

5、安全性

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

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

转载于:https://my.oschina.net/zhanghaiyang/blog/593279

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_768915.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浅谈大型网站动态应用系统架构

转自:http://news.cnblogs.com/n/70241/ 动态应用,是相对于网站静态内容而言,是指以c/c、php、Java、perl、.net等服务器端语言开发的网络应用软件,比如论坛、网络相册、交友、BLOG等常见应用。动态应用系统通常与数据库系统、缓存…

网站推荐:Google音乐搜索引擎

Lander之前在网路上在线听或下载MP3都是通过百度的MP3搜索,不知道大家日常都用什么来着。使用百度音乐搜索常被一些问题困扰,如下载比较麻烦,下载的音乐质量无法保证(其实在国内,几乎绝大部分网站提供的MP3都是盗版的&…

打包Asp.Net 网站成为一个exe 方便快捷的进行客户演示

在Asp时代有一个NetBox 产品可以把整个Asp网站AllInOne的打包成一个exe,在没有IIS的情况下可以单独运行这个exe来开启整个网站。在Asp.Net 下一直没有类似的产品出现,可能是IIS已经非常的强大了,不需要类似的产品了? 但是在某种场景下还是需…

网站日志返回304状态码

之前在seo中心里面听老师讲过一个seo者是需要去分析网站日志的。而如果你的网站还没有网站日志这个功能的话,那么我建议你可以去换一个空间了。因为做seo就需要有网站日志。 在哪里查网站日志呢?以西北互联的香港空间举例。登陆后台之后会有一个叫网站日…

在线评论html,在线评论与SEO——评论内容的重要性

所有人都知道搜索引擎喜欢高质量的原创内容,那么到底什么算原创、如何产出原创内容、哪些原创内容属于高质量——一直是站长们纠结的问题。最近有人向小编推荐了一篇文章,作者用BrightLocal产出的消息者报告数据作为依据,表现了在线评论内容在…

(一)新手搭建、备份、还原Sharepoint门户网站之--新建篇

1. 企业门户安装 1.1 安装前期准备 安装前先准备好以下安装程序:Windows Server 2003(或以上)、SQL Server 2005、.NET Framework 3.0、Office SharePoint Server 2007。 1.2 安装必要的Windows组件 首先安装好一台Windows Server 2003的服务器,并安装几…

学用MVC4做网站一:修改密码1.4

一、用户 1.1用户注册 1.2用户登录 1.3修改密码 1.4修改资料 在用户登陆成功后要跳转到一个页面,暂且叫做用户中心吧。在【UserController】添加[default] action [UserAuthorize]public ActionResult Default(){userRsy new UserRepository();var _user userRsy.…

关于大型网站技术演进的思考系列博客

2019独角兽企业重金招聘Python工程师标准>>> 出处:夏天的森林博客 关于大型网站技术演进的思考(一)--存储的瓶颈(1)关于大型网站技术演进的思考(二)--存储的瓶颈(2)关于大…

阿里云搭建自己的网站

1、下载xampp、wordpress复制到自己的服务器安装

构建httpd网站服务器(二) -- httpd服务的访问控制和基于域名、IP、端口的虚拟主机...

httpd服务访问控制概述httpd服务的访问控制作用:控制对网站资源的访问为特定的网站目录添加访问授权常用访问控制方式:客户机地址限制用户授权限制Order配置项,定义控制顺序先允许后拒绝,默认拒绝所有:Order allow,den…

怎样提高用户访问,提高网站页面深度浏览?

想必,很多的网站优化者,都遇到过类似的情况。访客进入到首页,不会进行二次的点击,而选择的是跳出页面。不能深度性的浏览,Spider会记录下。这样的现象,对于网站权重上的提升是负面影响的。因此。如何设计好…

使用Fail2ban来防御你的服务器和网站攻略

Fail2ban可以通过你的日志log匹配规则进而实现你想要的功能,比如禁止掉那些破解你密码的人。下面就讲一下在LINUX上Fail2ban的安装吧首先第一步确定你的系统进而安装:Centos复制代码$ sudo yum install fail2banFedora复制代码$ sudo yum install fail2b…

打造基于hadoop的网站日志分析系统:(2)Hadoop的编译

2019独角兽企业重金招聘Python工程师标准>>> 环境:ubuntu14.04 64位 前提,系统已经安装了jdk并且环境变量配置完成。 1.下载hadoop源码 wget http://mirror.esocc.com/apache/hadoop/common/hadoop-2.4.0/hadoop-2.4.0-src.tar.gz&#xff0c…

在线反汇编代码网站

https://godbolt.org/ 下面是一个在线运行汇编代码的网站 https://www.tutorialspoint.com/compile_assembly_online.php

很多人很想知道怎么扫一扫二维码就能打开网站,就能添加联系人,就能链接wifi,今天做个demo(续集)...

有些功能部分手机不能使用,网站,通讯录,wifi基本上每个手机都可以使用。(浏览器自带的扫描就够了,QQ扫码和微信扫码部分手机不能直接连接wifi) 在看之前你可以扫一扫下面几个二维码先看看效果: …

php 网站 文件寻址,如果访问存储器时使用bp寻址,则默认的段寄存器是什么?...

如果访问存储器时使用bp寻址,则默认的段寄存器是“SS”,即堆栈段。SS堆栈段通常是指采用堆栈方式工作的一段内存区域;在采用段式内存管理方式进行程序内存分配的架构中,堆栈段用来存放局部变量和函数返回地址。段寄存器是因为对内…

在IIS中配置MIME类型组建Wap网站

1.创建站点文件夹 首先你要在IIS上创建一个新的站点。 2.创建新的MIME类型 首先选择“WAP”站点的“属性”,然后选择“HTTP 头”标签,在“MIME映射”部分,点击“文件类型…”后再单击“新类型…”输入以下信息&#xf…

1小时建网站

2019独角兽企业重金招聘Python工程师标准>>> 第一步,申请域名,去万网或者新网申请 如 www.baidu.com 第二步,购买服务器。 (如香港的,一个月9块钱,好处是不用备案,国内的要备案&a…

7.让网站支持http和https的访问方式

平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html#iis 怎么让网站在本地支持SSL?http://www.cnblogs.com/dunitian/p/5248957.html 添加网站的时候不要只选择https(绑定里面添…

利用蚁剑对具有upload漏洞的网站进行攻击

最近学习了文件上传漏洞upload,一句话木马的注入以及蚁剑的结合使用,直接黑入靶场网站后台,拿到它的后台根目录,进而实现增删改查的骚操作。 一、首先通过phpstudy搭建一个upload靶场 由于这个网站后台使用php语言编写的&#xff…