当前位置:首页 > 短网址资讯 > 正文内容

大型网站技术架构(四)——网站的高性能架构

www.ft12.com8年前 (2017-08-06)短网址资讯1924

网站性能是客观的指标,可以具体体现到响应时间、吞吐量、并发数、性能计数器等技术指标。


1. 性能测试指标


1.1 响应时间

     

指应用执行一个操作需要的时间,指从发出请求到最后收到响应数据所需要的时间。如下列出了系统常用的操作响应时间表。


操作

响应时间

打开一个网站

几秒

数据库查询一条记录(有索引)

十几毫秒

机械磁盘一次寻址定位

4毫秒

从机械磁盘顺序读取1M数据

2毫秒

从SSD磁盘顺序读取1M数据

0.3毫秒

从远程分布式换成Redis读取一个数据

0.5毫秒

从内存读取1M数据

十几微妙

Java程序本地方法调用

几微妙

网络传输2Kb数据

1微妙

 

实践中计算响应时间通常是通过平均时间计算的平均值。


1.2 并发数

   

指系统能够同时处理的请求的数目,这个数字也反映了系统的负载性能。对于网站而言,并发数指网站用户同时提交请求的用户数目。
   

网站系统用户数>网站在线用户数>网站并发用户数


1.3 吞吐量


指单位时间内系统处理的请求数量,体现系统的整体处理能力。对于网站,可用“请求数/秒”或“页面数/秒”或“访问人数/天”或“处理业务数/小时”等来衡量。
 

TPS(每秒事物数)是吞吐量的一个常用量化指标。刺猬还有HPS(每秒HTTP请求数)、QPS(每秒查询数)。


1.4 性能计数器


操作系统的一些数据指标如System load(系统负载),CPU使用率、内存使用率、磁盘等使用情况。


2. 性能优化策略


根据网站分层架构,可分为Web前端性能优化、应用服务器性能优化、存储服务器性能优化。


2.1 Web前端优化


2.1.1 浏览器访问优化


  • 减少HTTP请求数,主要可通过合并CSS,JavaScript、图片。

  • 使用浏览器端缓存。在某些时候,静态资源文件编写需要及时应用到客户端浏览器,这种情况下,可通过改变文件名来实现。

  • 启用页面压缩,文本文件的压缩效率可达80%以上。

  • CSS放在页面最上面,JavaScript放在页面最下面

  • 减少Cookie传输。可以考虑使用独立域名来发送Cookie等。


2.1.2 CDN加速


CDN的本质仍然是一个缓存,只是部署在离用户最近的服务器上,一般缓存的都是静态资源。


2.1.3 反向代理


除了能够保护网站安全的作用以及负载均衡的作用外,反向代理还能够提供缓存作用(动态资源)。



2.2 应用服务器性能优化


应用服务器就是处理网站业务的服务器,网站的业务代码都部署在这里,主要优化手段有缓存、集群、异步等。


2.2.1 分布式缓存


缓存主要用来存放哪些读写比很高、很少变化的数据。
 

分布式缓存指缓存部署在多个服务器组成的集群中,以集群方式提供缓存服务,其具体架构有两种,一种是以JBoss Cache伪代码的需要更新同步的分布式缓存, 一种是以Memcached为代表的不互相通信的分布式缓存。


Jboss Cache 的分布式缓存在集群中的所有服务器中保存相同的缓存数据,当某台服务器有缓存更新的时候,会通知集群中其他机器跟新缓存数据。优点是应用程序可以 从本地快速的获取缓存数据,但当集群规模较大的时候,缓存更新信息需要通过到集群所有机器,其代价可想而知。

大型网站需要的缓存数据一般都很大,可能会有TB的内存占用,这时候就的使用Memcached,是一中互不通信的架构,每台存储的缓存数据可以不一样。


2.2.2 异步操作


为了改善网站的扩展性,可以使用消息队列将调用异步化。


2.2.3 使用集群


在网站高并发访问的情况下,使用负载均衡技术为一个应用构建一个由多台服务器组成的集群,将并发访问请求分发到多台服务器上处理。



2.2.4 代码优化


代码优化主要涉及多线程、资源复用(对象池或单例)、数据结构和垃圾回收。


2.3 存储性能优化


可以考虑使用分布式存储、openfiler、磁盘阵列、HDFS(Hadoop)。

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

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

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

标签: 高性能架构
分享给朋友:

相关文章

如何利用QQ群,一个月裂变引流成千人大群

如何利用QQ群,一个月裂变引流成千人大群

工欲善其事必先利其器。进入网络项目圈子里的人大概都知道,流量为王,手上掌握了流量或者掌握了流量的技巧和流量入口,那么很多项目就直接成功了50%。圈子无非就是流量、项目点子、执行力、以及运营。流量就是基础,无论做普通民宅还是豪华别墅,都需要一...

【FT12短网址】JavaScript 疲劳终极指南:我们行业的真相

【FT12短网址】JavaScript 疲劳终极指南:我们行业的真相

引言812是个很有含义的数字,本文是FT12短网址摘录自网络,版权和其他权益归原作者所有。正文从这开始~抱怨 JS 疲劳就像是在抱怨人类发明了太多解决问题的工具:从邮件到飞机到宇宙飞船。上周我在 NebraskaJS 2017 会议上做了一...

生鲜配送服务的未来在哪?答案可能得从它的过去中寻找

作者:喜汤按:Pique基金创始投资人、综合投资作者Bonnie Foley-Wong在 Quora 回答了“是什么让生鲜食品配送公司真正走向主流?”这一问题。她举了五个因素来回答该问题,最终得出短期内,生鲜食品配送公司可能不会走向主流的结...

处理好自己与身边人的关系,只要记住三句话

处理好自己与身边人的关系,只要记住三句话

(图文综合自网络)很多时候,人们往往善于忘记别人对自己的好处。而一旦出现无心的冒犯,却总是耿耿于怀,变成了话不投机半句多,甚至老死不相往来。想想我们身边是否有这样的事例?人是社会动物,每个人都不可避免地要与人交往。要想过得愉快,就要处理好自...

iPhone X再见,我们来看看iPhone X的8大缺点

前几天苹果举行了新品发布会,这次带来了三部手机,iPhone8和iPhone8 Plus以及iPhone X,iPhone8在外观上和iPhone7的一样的,不同的是使用了玻璃材质。当然,不可否认,作为苹果iPhone十周年的纪念款机型,i...

类似http://t.cn/xxxxx的短链接如何生成?

类似http://t.cn/xxxxx的短链接如何生成?

很多人在营销推广中都要使用到短网址,新浪短网址是大家最先接触到的,服务也很稳定,所以需求量也很大。据不完全统计,大概每天有几十亿条t.cn短链接生成。如此巨大的数量,难道都是先登录新浪微博,然后发布微博自动生成短链接?这种方法有两个弊端。第...

评论列表

发表评论

访客

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