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

news/2024/5/16 7:23:31/文章来源:https://blog.csdn.net/weixin_34228617/article/details/92661895

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/606738

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

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

相关文章

利用GitHub Pages和Bootstrap创建个人网站

作为一名想要想找前端实习的即将毕业的学生,我最近意识到拥有个人网页会使自己的简历更容易被注意到。本文主要是我创建过程及个人心得,有些操作我也是第一次,所以难免在解释中会有错误。另外说明一下,我的电脑是Mac系统。 欢迎大…

数据库考点之网站架构

如题:2019年10月: 注: 书本上讲了两种,也算是一笔带过,但可以从整体上了解数据库在编程中的作用,所以这里还是有重要意义的,书本上详见P94页: LAMP这种架构是一种初始阶段的架构&am…

Asp.net(C#)学习网站

名称:快速入门 地址:http://chs.gotdotnet.com/quickstart/ 描述:本站点是微软.NET技术的快速入门网站,我们不必再安装.NET Framework中的快速入门示例程序,直接在网上查看此示例即看。 名称:微软官方.NET指…

第一次建设网站-论文无忧网

第一次建网站啦,给自己做的。本人没有美工基础,网站还在建设中。。。持续改善。各位有建站经验的请教一下。 上图:

php-mysql驱动是什么,用PHP和MySQL构建一个数据库驱动的网站_php

将这个脚本添加到启动事务中是个比较复杂的任务。如果你使用的不是RedHat linux而且你没有把握做这件事,你最好请教一下了解的人。在RedHat Linux中,执行以下命令(在mysql目录下)会完成这个工作:% cp share/mysql/mysql.server /etc/rc.d/ini…

php网站模板原理,PHP关于模板的原理和解析

将PHP代码和静态HTML代码进行分离,使代码的可读性和维护性得到显著提高。使用模板引擎:我们所说的模板是Web模板,是主要由HTML标记组成的语言来编写的页面,但也有如何表示包含动态生成内容的方式(解析标签)。模板引擎是一种软件库…

获取国家语言_干货—「世界各国语言网站学习分享」,附带100G语种学习资料...

这是一篇纯干货分享的文章,资料无偿附送~如果你有兴趣或者需求想要学习其他语种可以【私信】联系小编,获取专属资料世界上到底有多少种语言呢?语言是人类交际的重要工具。凡有人类的地方就会有语言。其实统计语言数量是一件非常困难的事情,一…

3638MySQL数据库应用答案_资料操作 - MySQL精华学习 数据库的 SQL 语法参考_数据库技术_Linux公社-Linux系统门户网站...

MySQL精华学习 数据库的 SQL 语法参考资料操作[日期:2007-04-28]来源:Linux公社作者:Linux[字体:大 中 小]二、资料操作 dml (data manipulation language)  资料定义好之後接下来的就是资料的…

关闭网站服务器端口,cmd关闭端口的命令是什么_网站服务器运行维护

win10系统提示安装程序包的语言不受系统支持怎么办_网站服务器运行维护win10系统提示安装程序包的语言不受系统支持的解决方法是:1、打开此电脑,在搜索框中输入office,进行搜索;2、将搜索出来的内容全部删除;3、打开注…

全国哀悼日 网站变灰装(附代码)

根据国务院文件,全国哀悼日,在此期间,全国和各驻外机构下半旗志哀,停止公共娱乐活动,外交部和我国驻外使领馆设立吊唁簿。届时汽车、火车、舰船鸣笛,防空警报鸣响。 中国站长站将整站换成素装。并建议中国所…

快照速度_网络推广——网络推广专员如何看待网站快照更新快慢问题?

百度搜索引擎针对网站快照更新的问题曾有言明,表示网站快照的更新快慢与网站权重没有太多的直接关系,因为搜索引擎对网站抓取频率与快照更新是两个不同的概念,然而有很多站长表示快照更新慢是不是因为网站内部出现问题?或者是网站…

服务器加网站防盗链,自己做网站如何做防盗链设置

我们在做网站时,如果自己网站上的图片被别人复制过去,就会增加自己网站服务器的负担,所以在做网站时,需要做一些防盗链设置。如果你的空间支持.htaccess文件并且支持网站伪静态规则,你都可以防盗链!通过.ht…

服务器弄好了怎么做网站,服务器怎么做网站?服务器做网站步骤

在建站基础入门课程中,我们讲了,我们建一个网站需要域名、主机、程序。如果建小型网站,主机的选择可以使用虚拟主机,如果建中大型网站或者同时建多个网站,通常会选择服务器。对于一些建网站新手,对于服务器…

【iOS资源推荐】那些我看过的书,视频,网站,博客(持续更新)

由于很多新手都有选择恐惧症,所以这里推荐的东西,我尽量少而精 1.视频 这个不用说,斯坦福大学的教程不管是权威性,还是新颖程度都是No1. 斯坦福大学公开课:iOS 7应用开发,这个是OC http://v.163.com/speci…

html如何制作响应式网站,使用HTML和CSS构建响应式网站布局

大多数现代网站使用响应式网页设计,现在您必须考虑实际反应的意义,响应式网站可以适应不同的屏幕尺寸,并可以相应地调整其设计和布局。在本教程中,我们将学习如何使用HTML和CSS进行响应式网站设计,但首先,我…

网站服务器防扫描目录,服务器安全:添加Nginx规则防止服务器被恶意机器人扫描...

自己购买服务器搭建网站就涉及到一个服务器安全问题,虽然你自己不知道,但是每天服务器都在被一些机器人扫描。本文奶爸给大家分享几个Nginx的规则可以防止服务器被扫描。1、禁止默认通过IP访问服务器每台服务器都有一个IP地址,而一些机器人会…

网站经常间歇性访问不了_为什么Site网站首页不在第一位?应该如何解决?

为什么Site网站首页不在第一位?很多站长看到这个问题都会心发慌以为网站是否是被降权了,今天我就来彻底给大家分析一下。一、site网站首页不在第一位不一定是降权如下图,该网站site首页在第二位。但是该网站是没有降权的,网站的排…

想要导航首页提示_21个网站首页设计技巧

您的首页设置了您的网站和品牌的第一印象,因此您想要正确的设计。无论您是打算重新设计网站还是第一次启动公司的网站,请牢记以下21个提示。1.立即弄清楚您的报价尽管在设计时我们倾向于将重点放在图形上而不是文本上,但是在计划首页上的标头…

可以发外链的网站_外贸企业建站:外贸网站建站该怎么做外链?

外贸企业建站:外贸网站建站该怎么做外链?外贸网站建设并不是说建完了就没事了的,现如今外贸行业遭遇很大的挑戰,市场竞争激烈,假如网站不做优化得话,这么是非常容易被极易淘汰掉的。而做网站优化选取发外链…

开发常用的几个免费网站,值得收藏

在开发的时候,想记住所有的单词基本是不可能的,所以就需要进入文档,只要理清需求能做出来,就很不差了!! 1.百度,俗称度娘,有不懂的就问百度,有问必答,跳转 …