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

news/2024/5/9 14:20:54/文章来源:https://blog.csdn.net/weixin_33979363/article/details/92652437

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

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

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://my.oschina.net/zhanghaiyang/blog/593009

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

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

相关文章

推荐几个高质量图片网站,再也不怕没图装X了

这几个图片网站都是高质量的图片网站,建议收藏! 找个高逼格的图片发票圈,不再难了。 Unsplash 网址:https://unsplash.com Unsplash是一个免费高质量照片的网站,照片都是真实的摄影,照片分辨率也很大,全是生活中的景象作品,清新的…

关于最近学习的自动登录网站技术以及post get请求

下面要列出2段内容,一个是目前做的工作,一个是之后要继续进行的工作.(以后完成一部分工作就将后者放到前者内容里面去更新) 1.目前进行的工作: 其实模拟自动登录就是用httpwatch软件进行抓包,,找到你想要的页面,分析post get请求,然后用程序进行模拟就好了,难点就是这个分析抓包…

IOS破解软件,比较全的网站。

转载于:https://blog.51cto.com/14259888/2369621

mouseenter和mouseover的区别

mouseover:当鼠标移入目标元素或者移入目标元素的子元素,都会触发该事件。所以有一个重复触发,冒泡的过程。对应的一出事件mouseout。 mouseenter:当鼠标移入目标元素时(不包括子元素),会触发该…

好久没有更新了,上传一个网站上通用的验证效果的函数吧。

之前觉得在注册表单的时候,当填写表单失去焦点进行验证的效果很酷,自己也经历了很多的版本的改进,不过都是JS的代码,现在感觉已经成形了。所以发到网上让大家PK一下。 1/**//* 2 函数名:检验表单的函数 3 作者&a…

列出一些当前所见到过的基于sharepoint的漂亮的internet网站(update 2007-10-18)

老外的网站:传说中的夏威夷航空网站 一个食品网站一个提供解决方案的公司门户 update(10-18) 几个非常不错的 sharepoint网站 中文的: sharepoint爱好者易联工作室 sharepoint中国台湾的一个sharepoint教学网 update (2007-10-16) KenTCj的个人网站 转载…

为什么一个网站的资源会存在于多个域名中?

转自:http://www.toutiao.com/i6432298910575755777/ 大致可以这样理解,为什么一个网站的资源会存在于多个域名中? 在很多的网站中,如果我们打开开发者工具查看source选项,会发现下面会有很多个域名。例如某度首页的so…

Step by Step WebMatrix网站开发之二:使用WebMatrix(1)

第一次运行WebMatrix会看到如图1所示的窗口。 图1 第一次运行WebMatrix显示的窗口 我的网站 进入“我的网站”可看到自己设计过的网站。 从Web库创建网站 可以从“从Web库创建网站“中理由网络上开源的网站系统创建网站,如名气比较响的WordPress、phpwind等…

自定义事件和windows phone访问网站取得数据

昨天看了一位园友的自定义事件的文章,我以前学习过这方面的内容,但在实际工作中基本没用过自定义事件,前天就边看着,自己写了写代码把这个知识点复习了。下面上代码 事件类代码 public class EvevtClass:EventArgs {public st…

减少HTTP请求之将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片(大型网站优化技术)...

在网站开发过程中,对于页面的加载效率一般都想尽办法求快。那么,怎么让才能更快呢?减少页面请求 是一个优化页面加载速度很好的方法。上一篇博文我们讲解了 “利用将小图标合成一张背景图来减少HTTP请求”,那么,这一篇…

请求的站点不可用或无法找到怎么解决_seo优化怎么做能快速被收录

原标题:seo优化怎么做能快速被收录网站在做seo优化时,不被收录是一件头疼的事,网站不被收录会影响接下来的seo优化工作,无法做关键词优化,但是网站被收录都有一个时间过程,很少有网站秒收录的,快…

利用github pages做免费静态网站个人免费域名空间

如图所示点击加号新建一个项目,然后填写 xxx.github.ip 为项目名 xxx表示你的账号 别填错了,乱填也无法开通。 必须是public属性,勾选readme 最后点创建 在项目里新建index.html文件 和CNAM文件 按图示新建即可 为保能快速开通 建议加上CNAM 如果不知道怎…

如何把自己的网站部署在网上_如何制作自己的网站,你需要看看这篇

在这个互联网时代,有许多的人已经有了属于自己的博客,自己的网站,你是不是都会羡慕不已呢?有了自己的网站就可以发表一些自己的文章,好的文章也可以给你的网站带来不少的粉丝。今天八爪网就给大家分享如何制作自己的网…

技术干货:使用静态缓存提升网站性能的五种方法!

摘要: 静态缓存,一般指web类应用中,将图片、js、css、视频、html等静态文件/资源通过磁盘/内存等缓存方式,提高资源响应方式,减少服务器压力/资源开销的一门缓存技术。本文主要通过五个方面展开,跟着小编一…

ASP.NET学习(1)-网站配置文件读取/保存

虽然做了几个网站,但是一直有个问题困扰我,就是网站配置文件的保存问题,网上有人说保存在数据库,有人说保存在XML中。保存在数据库中是个方便的选择,但是有个问题,每张表都应该有个主键,如果网站…

Matomo – 搭建一个属于自己的网站统计分析站点

https://www.sooele.com/index.php/2018/03/18/%E3%80%8E%E6%95%99%E7%A8%8B%E3%80%8Fmatomo-%E6%90%AD%E5%BB%BA%E4%B8%80%E4%B8%AA%E5%B1%9E%E4%BA%8E%E8%87%AA%E5%B7%B1%E7%9A%84%E7%BD%91%E7%AB%99%E7%BB%9F%E8%AE%A1%E5%88%86%E6%9E%90%E7%AB%99/地址 http://www.bigf.inf…

网站实现扫描二维码关注微信公众号,自动登陆网站并获取其信息

原文:初始方案: https://www.cnblogs.com/cmyxn/p/7803117.html 优化方案 http://www.cnblogs.com/cmyxn/p/7814120.html 需求 网站实现扫描二维码关注微信公众号,如果已经关注公众号就自动登陆网站并获取其微信昵称,头…

使用Google WebP图片格式帮助控制网站页面大小

日期:2013-3-16 来源:GBin1.com 不管你相信或者不相信,随着互联网的快速发展网页也在持续不断的变大。 使 网页迅速膨胀的罪魁祸首不是大量使用的JavaScript库,CSS和无尽的共享按钮,而是精美的图片。根据HTTPArchive的…

网站服务器的管理,网站服务器的管理

网站服务器的管理 内容精选换一换域名注册(Domain Registration)是用户付费获取Internet上某一域名一段时间使用权的过程。华为云域名注册服务提供域名的注册、购买、实名认证以及管理功能。华为云的域名注册服务与新网合作,因此通过华为云注册的域名其注册商为新网…

富士通服务器怎么修复,BIOS维修网站www.biosrepair.com-富士通E8410 BIOS刷新修复

接修一台富士通E8410笔记本,故障原因是用户自升级BIOS后无法开机;对于维修来说,BIOS损坏是最容易修复的故障,只要重写BIOS芯片即可,当然维修BIOS,最关键的问题是BIOS文件。由于明确机器故障,因此…