分析高性能网站构架的几个方面
发布时间:2023-02-22 12:43:42 所属栏目:经验 来源:
导读:一、优化网站响应时间的架构方案:
一个网站运营人员能不能留住高质量的用户,一方面是看优质的内容,另一方面是可以看搜索引擎的响应时间。通常有以下几个方式来降低网站响应时间:
1、减少HTTP请求。包括合并
一个网站运营人员能不能留住高质量的用户,一方面是看优质的内容,另一方面是可以看搜索引擎的响应时间。通常有以下几个方式来降低网站响应时间:
1、减少HTTP请求。包括合并
|
一、优化网站响应时间的架构方案: 一个网站运营人员能不能留住高质量的用户,一方面是看优质的内容,另一方面是可以看搜索引擎的响应时间。通常有以下几个方式来降低网站响应时间: 1、减少HTTP请求。包括合并css和javascript。减少图片数量,比如利用css的偏移技术来在一个图片中选择不同的位置内容。利用浏览器的Cache功能,我们可以在头中声明是否被浏览器缓存。 2、静态化动态内容。比如永久的 HTML文件。 HTML文件生成后并设定存货期限。等到期限到来后,需要查询新的动态内容以替代。 3、优化数据库。数据库的性能对于项目整体性能是重中之重。设计良好的Mysql比乱糟糟的Mysql性能高出N个数量级,更别论再引入NOSQL了,比如Redis,MongoDB。 4、使用缓存。把花费时间和资源成本高昂的计算结果取出缓存起来,避免重复计算。比如在Mysql前面挡一层Memcached。比如生成一个文件,使用的时候include进来。再比如PHP中的OPCACHE等。 二、压力测试的架构方案: 吞吐率是指单位时间内处理的请求数,单位reqs/s。最大吞吐率是指单位时间内能够处理的最大请求率。模拟足够多的人数和并发请求来测试最大吞吐率的方法叫做压力测试。比如Apache自带的ab(Apache Bench)。ab的参数很多,常用的有请求数(-n),并发用户数(-c),超时时间(-t),长连接(-k),附件一个Cookie(-c name=value) 三、长连接的架构方案:每次请求都需要TCP的三次握手,握手完比表示连接正式联通,之后再发送数据。那么,把N个请求,就需要3N次握手,传递N次数据,得到N次响应,总共5N。如果把N个请求合成一个请求,就是3次握手,1次传递数据,1次返回响应,共5次。 四、提高Mysql的响应速度的架构方案: Handlerocker是日本的一位架构师开发。Mysql的一种插件。Handlerocker实现了绕过Mysql的SQL解析层。在Mysql5.1以上版本可以使用,详情可以查看Mysql手册。这里就不再阐述。 五、异步计算的架构方案:比较耗时的比如将用户上传的文件分发到多台机器,比如裁剪图片,视频转码等。可以使用异步方案。让用户无须等待计算结束,而是先行返回结果。代表产品有和Memcache同一家的Gearman。关于Gearman的使用可以查看PHP手册。这个工具可以让开发人员快速创建自己的应用程序,并且可以在不改变现有应用程序的情况下进行扩展。 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
