深入优化apache介绍

本文介绍了Apache服务器的压力测试工具ab及其使用方法,强调了在压力测试中如何应对超出服务器最大负载的情况,如配置负载均衡、反向代理和缓存技术。此外,文章详细阐述了Apache的三种工作模式:prefork、worker和event,分别解析了它们的工作原理和适用场景,并提供了配置prefork工作模式的步骤。最后,讨论了Apache网站根目录的优化,包括权限设置和访问控制。
摘要由CSDN通过智能技术生成

深入优化apache

一-、apache 压力测试和工作模式

1、ab压力测试

1)压力测试的方式

服务器本地压力测试:占用带宽资源小,测试比较精准

客户端模拟海量客户端请求网站进行测试:占用服务器带宽资源大,测试存在误差

2)ab压力测试的特点

apache自带压力测试工具.

在apache.服务器本地访问WEB站点进行测试

使用简单

准确计算apache服务器端最大访问并发量

3)当客户端访问量超出apache服务器端最大负载解决方案

配置负载均衡

配置反响代理加缓存技术

配置双机热备

4) ab压 力测试常见的选项

-n: 总共请求执行次数,默认1

-C: 并发数,默认1

-t: 测试进行的总时间

-V: 显示详细信息

5)使用ab压力测试

[ root@centos01 ~]# ab -n1000 -c 1000 www . benet . com/ index . html

2、apache工作模式

1) prefork

apache默认工作模式

二个父进程生成多个子进程,子进程相应客户端的请求

每个子进程相互独立

子进程运行方式由父进程进行派生启动

2) worker

采用多进程和多线程方式处理客户端请求I

一一个进程下包含多个线程,线程相应客户端请求

使用线程相应客户端请求占用内存资源小

避免内存溢出

支持高并发环境使用

3) event

采用多进程和多线程己经epo11方式相应客户端请求

原理和worker-样

避免长期占用线程导致内存资源浪费

一些CPU不支持event模式

3、配置prefork工作模式

1) prefork模式特点

父进程携带子进程

父进程root管理

子进程使用普通用户管理

子进程必须有权限访问apache

2)查看apache是否支持preforke工作模式

[ root@centos01 ~]#_ httpd -1

3)修改apache主配置文件支持prefork工作模式

[root@centos01 ~]# vim /usr/1ocal/httpd/conf/httpd. conf

371 Include! conf/extra/httpd-mpm. conf

4)修改apache工作模式配置文件

 [root@centos01 ~]# vim /usr/1ocal/httpd/conf/extra/httpd- -mpm. conf

<IfModule mpm_ prefork_ module>

ServerLimit 100 最大进程数100

StartServers 5 启动进程数量

MinSpareServers 5 最小空闲进程数量

MaxSpareServers 10 最大空闲进程,必须小于最小空闲进程

MaxCl ients 1020  最大子进程数量,参考最大并发量

MaxRequestsPerChild 1020 子进程最大相应并发量,0表示不会清零容易内存溢出

</ I fModule>

5)重新启动apache

[root@centos01 ~]# /etc/init.d/httpd restart

4、worker

1)编译apache支持worker

 [root@centos01.. httpd-2.17]#

./configure --prefix=/usx/1oca1/httpd

--enable-so --with-mpm-worker

2)修改apache工作模式配置文件

[root@centos01 ~]# vim /usr/1ocal/httpd/ conf/extra/httpd- -mpm. conf

<I fModule mpm worker_ module>

ServerLimit 1020最大进程数1020

StartServers 10 开启进程数

MaxClients 2000 客户端请求2000

MinSpareThreads 100 最小空闲进程100

MaxSpa reThreads 150 最大空闲进程

ThreadsPerChild 25 每个进程建立的常驻线程25个

MaxRequestsPerChild 10000 最大访问并发量10000

</ I fModule>

3)重启动apache

[ root @centos01 ~]# systemctl restart httpd

5、apache网站根目录优化

1) apache网站根目录属性常见的选项

allowOverride:允许使用.htaccess控制客户端访问网站目录

Require:设置目录的访问控制

Idexes:客户端没有制定访问那个目录,显示网站根目录总的子目录或者其他文件

MultiViews:访问网站根目录数据不存在可以进行模糊查询

ExecCGI:

允许网站跟目录运行脚本程序

FollowSymLinks:允许使用符号链接

IncludesNoExecCGI:禁止运行脚本程序

All:不包含模糊查询功能,其他都支持

2)配置网站根目录不存在显示子目录支持模糊查询

[root@centos01 htdocs]# vim /usr/ local/httpd/ conf/httpd. conf

144 Options Indexes FollowSymLinks

3)配置访问apache网站限制

[ root@centos01 ~]# vim /usr/local/httpd/ conf/httpd. conf

152 AllowOverride all

4)创建.htaccess限制文件

[ root@centos01 ~]# vim /usr/ 1ocal/httpd/htdocs/ .htaccess

order deny, allow

deny from all

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值