1. 开启Keep-Alive
开启Keep-Alive后,可以保证浏览器和服务器之间的连接持久存在,这样如果同一个域名请求很多资源的情况下可以省去建立连接的时间和资源消耗。所
以对于静态服务器来说,由于一个域名会请求N多资源,比较宜开启Keep-Alive,但是对于动态服务器,不宜开启Keep-Alive,因为这样会造
成很多的空闲进程,浪费内存空间。
配置:
KeepAlive On #开启KeepAlive
KeepAliveTimeout 5 #保持连接5秒
2. HTTP缓存设置
当直接在浏览器中输入一个URL,或者点击一个链接的时候,那么浏览器缓存就会起作用,如果缓存没有过期,那么浏览器会从本地读取资源,不会发起HTTP请求,如果缓存过期,那么浏览器会发起新的浏览器请求。按ctrl+F5,浏览器会情况本地缓存,重新请求资源。
Expires是HTTP/1.0的缓存头, Cache-Control: max-age
是HTTP/1.1是用来进行HTTP缓存的头。Expires指定了资源过期的绝对时间,GMT格式,Cache-Control:
max-age指定了资源过期的相对时间,单位是秒。在支持HTTP/1.1的浏览器上,如果发送两个头,那么Cache-Control:
max-age会覆盖掉Expires;在支持HTTP/1.0的浏览器上,即使发送了两个头,但是只有Expires会起作用,所以为了兼容老的浏览
器,还是要同时发送这两个头。设置HTTP缓存,需要安装expires_module,其会发送Expires和Cache-Control:
max-age两个HTTP头。
配置:
<IfModule expires_module>
ExpiresActive On
ExpiresByType application/x-javascript "access plus 30 days"
ExpiresByType text/css "access plus 30 days"
ExpiresByType image/gif "access plus 30 days"
ExpiresByType image/jpeg "access plus 30 days"
ExpiresByType image/png "access plus 30 days"
</IfModule>
ExpiresByType application/x-javascript “access plus 30 days”
表示对js资源设置Expires和Cache-Control:
max-age头,其中Expires的值是以客户端访问资源的时间为基准的后30天,Cache-Control:
max-age的值是3600x24x30秒。
ExpiresByType application/x-javascript “modification plus 30 days”和上面效果一样,只是Expires的时间是以资源最后修改的时间作为计算的基准。
3. 开启Gzip压缩,并设置vary头
Gzip会对文本资源进行压缩,一般能节省40%的大小,二进制内容不需要开启Gzip压缩,因为这些文件是已经压缩过的,如果再进行Gzip压缩反而会
增加其大小。静态资源一般都会在代理服务器上进行缓存,而有的浏览器支持Gzip,但是也有不支持Gzip的老旧浏览器,所以需要设置Vary:
Accept-Encoding
头,这个头告诉代理缓存服务器要对资源缓存两份,一份压缩过的,一份没有压缩过,然后根据浏览器发送的Accept-Encoding头来返回压缩或者不
压缩的内容。设置Gzip压缩,需要安装deflate_module。
配置:
<IfModule deflate_module>
#对js,html,xml,css,普通文本开启Gzip压缩
AddOutputFilterByType DEFLATE application/x-javascript text/html text/plain text/xml text/css
</IfModule>
4. 关掉ETag
Last-Modified与ETag是同样的功能,都是用来标识一个资源是否更改过,Last-Modified的值是资源的时间戳,如果按F5或者刷
新按钮则If-Modified-Since头会带着时间戳发送到服务器,如果服务器上资源的最后修改时间<=这个时间,那么返回304 Not
Modified,否则返回200 OK
以及新的资源;ETag的值是通过资源的信息(一般为inode,大小,时间戳)而计算出来的一个字符串,如果按F5或者刷新按钮则If-None-
Match头会带着这个值发送到服务器,服务器用这个值来和当前资源的值进行比对,如果相等,则返回304 Not Modified,否则返回200
OK
以及新的资源。默认情况下Apache对静态资源会发送Last-Modified和ETage,但是由于ETage的计算会耗费服务器的CPU资源,所
以选择关掉,只开启Last-Modified。
配置:
FileETag None
Header unsets ETag
分享到:
相关推荐
但随网站内容日益复杂和带宽的增加,对Apache进行优化以取得更好的性能变得日益重要起来。 如果优化的结果仅仅是极小的性能提升那真是浪费时间。试想一下,你花了好几个小时甚至几天调整Apache的各种参数但结果仅是...
为了满足网站高负荷的要求,在调整Apache参数时发现进程经常占用内存过多导致当机。经过不断的优化和修改参数组合,终于让服务器稳定 下来,可以满足大量访问的考验和应用要求。笔者总结了调试过程中的问题和解决...
1.操作系统调优; 2.Java虚拟机调优; 3.Apache集成Tomcat; 4.【适用场景】 大量使用静态页面的应用系统; 5.【适用场景】 并发用户量及在线使用用户数量比较高的系统
课程重点介绍了分布式系统的性能优化技术。通过学习课程资料和实践项目,我学会了如何通过水平扩展、缓存技术、异步处理、并发控制等手段提高系统的性能和吞吐量。我深入了解了分布式系统中常见的性能瓶颈,并学会了...
本项目是一个基于Java和Python开发的Apache Spark...系统设计旨在通过分析历史记录,自动调整Apache Spark的配置参数,以优化其性能表现。用户只需提供相关数据和参数历史记录,系统便能自动进行调优,提高系统性能。
Apache Spark具有180多个配置参数,用户可以根据自己的特定应用程序对其进行调整,以优化性能。 当前,这些参数是通过反复试验手动调整的,由于参数空间大以及参数之间的复杂交互作用,因此无效。 为了使Spark的...
是为了迎合企业对于多语言网站版本的需求而发布的,“2.0.4.9中英双语版”使用了中英数据单条并存的设计方法,以简化管理员在数据录入、修改等操作上的工作量,在中英共用数据方面做了优化调整,同时继承了“2.0.4.9...
RocketMQ为了实现高性能高吞吐,对一些参数的调整比较激进。RocketMQ的部署建议是最好在物理实体机上,该机器上不要部署其他同样需要大量资源的软件。 2 从os.sh脚本看参数优化 os.sh脚本位置在 ...
(有关已修复的错误的信息,请参见) mod_pagespeed是Apache的一个开源模块,该模块自动将Web性能最佳实践应用于页面和相关资产(CSS,JavaScript,图像),而无需修改现有内容或工作流。 mod_pagespeed建立在Page...
优化的CSS和优化的JS让网站打开更快,让搜索引擎更好收录,让网站性能更优越。 免费开源 我们做后决定:坚持永久免费开源,绝不对程序进行收费,请认阅读《KiHaRa开源计划》。 更新日志1.0.9 1.优化安装 2.优化...
在现有基础设施中工作,如IIS和Apache 调整与配置不同参数以优化性能管理新的安全框架,包括授权.凭证映射器。判定器和密钥库本书详细介绍了当今领先的应用程序服务器WebLogic Server。从安装与工作负载管理到部署...
功能更新: 1.后台管理面板合并到了用户中心 2.系统安装程序合并入panel模块 3.模块设置和模块许可合并为模块...注意:使用IIS5.x或apache1.3在不支持PathInfo的情况下是不能使用的,推荐使用Apache2.x以提高性能
优化的CSS和优化的JS让网站打开更快,让搜索引擎更好收录,让网站性能更优越。 免费开源 我们做后决定:坚持永久免费开源,绝不对程序进行收费,请认阅读《KiHaRa开源计划》。 更新日志1.0.9 1.优化安装 2.优化...
为了克服挑战,我们在Apache Hadoop中引入了全面的端到端解决方案,也称为智能存储管理(SSM)。 收集HDFS操作数据和系统状态信息,并基于收集的指标,SSM可以自动对这些方法进行复杂的使用,以优化HDFS的存储效率...
ThinkPHP 2.2 更新说明[入口][改进] 内存起始记录移到ThinkPHP入口文件位置 更加准确[改进] 优化项目编译机制[调整] 部署模式和ALLINONE模式合并[调整] 调试模式更加方便调试[删除] 废除入口常量定义,包括APP_CACHE...
快速搭建项目原型,基于Spring + Spring MVC + Mybatis,...大量配置示例,根据需求,自由优化、调整,达到最佳性能 大量前端模块化开发示例,积极在探索前端最佳的架构,与后台最佳的交互,构建雄心勃勃的Application
经我们测试,在大压力环境下,信息管理模块占用1%的CPU资源,如果启用性能优化选项,甚至可以做到0的CPU占用。除了信息管理模块,其他功能只有在用户登陆到系统后台进行操作时才会占很小量的web请求的资源使用量,...
Storm,Hadoop,Spark,Cassandra)开发,每种技术通常具有数十种可配置参数,应对其进行仔细调整以使其达到最佳性能。 BO4CO可帮助大数据系统的最终用户(例如数据科学家或中小型企业)自动调整系统。 建筑学 下图...
同时,通过调整算法参数和模型配置,进行模型评估和优化,以提高推荐结果的准确性和性能。 (3)用户反馈和评价:为了改进推荐系统,我们需要收集用户的反馈和评价。然而,如何有效地获取用户反馈是一个具有挑战性的...