Apache 性能调优-参考篇
时间:2022-04-22
本文章向大家介绍Apache 性能调优-参考篇,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 内存
适当选用适合大小的内存,保证谷峰负载时,有足够的内存使用
2 使用ab测试apache性能
- ab -n 1000 -c 10 http://www.test.com
使用ab的缺点:不能更真实的模仿用户的操作。
3 调节保持连接的设定
- KeepAlive On #在单一连接时进行多个请求
- MaxKeepAliveRequests 200 #单一连接时间可以允许多少个保持连接的请求
- KeepAliveTimeout 15 #在没有接受其他请求时,会持续开启特定连接的时间
调整合适的各项值
4 取得网站活动快照
启用server-status处理器来取得子进程在运行的快照
<Location /server-status>
SetHandler server-status
</Location>
ExtendedStatus On
5 避免DNS查询
以DNS来查询客户端地址
- HostNameLookups Off
6 最佳化符号链接
主要考虑安全防护:永远不要允许遵循符号链接
主要考虑性能:永远使用Options FollowSysLinks且绝不使用Options SysLinkIfOwnerMatch
7 尽量降低.htaccess文件对性能的影响
只在必要的目录中启用AllowOverride,并告知Apache不要浪费时间在其他的位置上查找.htaccess文件
- AllowOverride None
然后以<Directory>区块启用必要的.htaccess文件
8 最佳化进程的产生
MinSpareServers MaxSpareServers 控制服务器池的大小,以便有子进程等待服务引入的请求
(永远不要发生,当请求送至网站却没有闲置的服务器进程在等待处理请求的情形)
9 调节线程的产生
<IfModule mpm_winnt.c>
ThreadsPerChild 1000
MaxRequestsPerChild 8000
Win32DisableAcceptEx
</IfModule>
10 将经常查看的文件存入高速缓存区
[使用MMapFile]----将文件内容存入内存的高速缓冲区
- MMapFile /www/xxx/index.html
- MMapFile /www/xxx/otherpage.html
[使用CacheFile]----将文件句柄存入内存的高速缓冲区,稍微降低系统性能,但是占用内存较少
- CacheFile /www/xxx/index.html
- CacheFile /www/xxx/otherpage.html
参考资料:《apache cookbook》
- 如何上手使用 Facebook 的开源平台 Detectron?
- 多线程编程学习三(线程间通信).
- 关于create database语句在10g,11g中的不同(r5笔记第88天)
- Web开发模式【Mode I 和Mode II的介绍、应用案例】
- 多线程编程学习四(Lock 的使用)
- Android编程规范
- 干货 | 深入分析Object.wait/notify实现机制
- 关于ORA-01555的问题分析(r5笔记第87天)
- 项目工具类
- AJAX常见面试题
- 干货 | Tomcat类加载机制触发的Too many open files问题分析
- 并行查询缓慢的问题分析(r5笔记第86天)
- Swagger文档转Word 文档
- AJAX应用【股票案例、验证码校验】
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- nginx(安装)
- Spring 中基于 AOP 的 XML操作方式
- python基础 -- 内建函数
- virtualenv 安装及使用
- Git 分布式版本控制 -- (1、基本使用)
- python爬虫----(scrapy框架提高(1),自定义Request爬取)
- python基础 -- 异常处理try的使用及一些思考
- 记一次关于MySQL与PHP的蠢事
- 编写一个简单的JQuery插件
- Spring AOP异常:Error creating bean with name ‘org.springframework.aop.aspectj.
- Tomcat7 Redis Session 共享
- CodeIgniter (CI) 框架学习 -- load_class
- Laravel框架学习 -- php artisan down/up
- Spring中基于注解@AspectJ的AOP实现
- python提高--running-python-code-contained-in-a-strin