ab压力测试
<代码> Apache自带压力测试工具ab,简单易用,且可以模拟各种条件对web服务器发起测是请求 ab工具可以直接在web服务器本地发起测是请求,这对于需要了解服务器的处理性能至关重要,因为它不包括数据的网络传输时间以及用户电脑本地的计算时间,从而可以通过观测各种时间指标判断web服务器的性能,以便进行参数的优化调整代码>
ab压力测试工具的作用
<代码>优化前先使用ab进行压力测试 优化后,重启服务,再使用ab进行压力测试 对比两次测试的结果,看优化效果是否明显 为了能更客观的评价web服务的性能,一般优化前后都要进行多次测试,取测试的平均值进行对比代码>
ab压力测试工具的使用,参数说明
<代码> ab[选项]网站网址 - n、c - t - v 代码>
实例
<代码> #亚太区的/usr/地方/httpd/bin/ab -n5000 -c900 www.kgc.com/index.html 代码>
ab工具测试结果的关键测试说明
Apache工作模式介绍
在测试时要根据情况调整求总数与并发用户数他工作模式介绍
<代码> Apache作为先今web服务器用的最为广泛也是最稳定的开源服务器软件。 其工作模式有许多中,源码包安装HTTPD时可查看httpd-mpm.cong文件,该文件位于额外的/conf目录中 目前主要有两种模式: 事件模式 preork模式 工模式 工作模式怎么区分 prefork:一个进程中包含一个线程 工人/事件:一个进程中包含多个进程代码>
事件工作模式介绍
<代码>事件是Apache最新的工作模式,他和工模式很像,不同的是在于它解决了维生长连接的时候占用线程资源被浪费的问题 事件工作模式在遇到某写不兼容的模块时,会失效,将会回退到工模式 事件工作模式需要Linux系统(Linux 2.6 +)对epoll的支持,才能启用,需要补充的是HTTPS的连接(SSL) 事件建立连接,保持连接,就像打电话说一会儿挂段,再说一会儿挂段,我可以设置超时时间,超过就断开,随时可以断开会话功能。 代码>
事件工作方式
<代码>在事件工作模式中,会有一些专门的线程用来管理这些维生类型的线程 当有真实请求过来的时候,将请求传递给服务器的线程,执行完毕后,又允许它释放,这样,一个线程就能处理几个请求了,实现了异步非阻塞。这增强了在高并发场景下的请求处理 灵活控制,多个请求时,可以把之前的进程释放,能处理高并发代码>
事件参数详解
<代码> & lt; ifMoudle mpm_event_module> StartServers 3配置文件中,启动3个进程 MinSpare线程75最少空闲的线程数量75 MaxSpare线程250最大空闲的线程数量250 ThreadsPerChild 25每个进程中默认开启25个线程 400年MaxRequestWorkers并发最大请求数量400个 MaxConnectionsPerChild 0如果设置为0。子进程将永远不会结束,如果设置成非0值,可以防止运行PHP导致的内存泄露代码>
prefork工作模式介绍
<代码> prefork是一个多路处理模块(MPM),实现了一个进程型的,预排生的web服务器,适合于没有线程安全库,需要避免线程兼容性问题的系统 再要求每个请求相互独立的情况下具有很好的特性。若一个请求出现问题不会影响到其他请求 具有很强的自我调节能力,只需要很少的配置指令进行调整就可以适合于企业应用要求 最重要的是将数设置为一个足够大的数值已处理潜在的请求高峰,同时又不能太大,以避免所需的内存超出物理内存的大小代码>
prefork工作模式方式
<代码>一个单独的控制进程(父进程)负责产生子进程,子进程用于监听请求并作出应答,因此在内存中会一直存在一些备用的(业余)或是空闲的子进程,用于响应新的请求,可加快响应速度 父进程通常以根身份运行,以便绑定80端口,子进程通常以一个低特权的用户运行,可通过配置项的用户和组配置 运行子进程的用户必须要对网站内容有读取权限,但是对其他资源必须拥有尽可能少的权限,以保证系统安全 编译安装时没有指定工作模式,默认会使用prefork模式,可用httpd - l查看Aapache工作模式深度优化,ab压力测试,apache目录属性