[Apache] 网站页面静态化与Apache调优(图)
概念=>
静态网址(静态页面): 1.利于seo 2.访问速度块 3.防止sql注入
动态网址(php页面,可传参数):1.不利seo 2.访问速度慢 3.有被注入sql可能
伪静态(对动态网址的重写): 1.利于seo 2.防止注入 3.仍然访问数据库,访问速度没有变化
页面静态化分类=>
方式上:1.真静态 2.伪静态
范围上:1.全局静态 2.局部静态(ajax+jquery)
------------------------------------------------------------------------------
页面静态化的必要性=>
apache/bin/ab.exe 为apache自带的压测程序,可以用来做效率测试,测试网站并发量大小和某个页面的访问时间。
基本使用:ab [options][http[s]://]hostname[:port]/path
options选项:-n 执行访问次数
-c 用户并发数量
ab.exe -n 10000 -c 100 http://localhost/test.php /* 由100个人共访问10000次test页面,当改为1000人访问时,apache会瘫痪 */
------------------------------------------------------------------------------
调整Apache的最大并发量=>
MPM(多路处理模块,即Apache采用什么样的方式处理并发),主要有三种方式:
1.prefork 预处理进程方式
2.worker 工作方式
3.winnt 一般是windows采用的
原理图:
设置apache并发数的步骤:
1)httpd.conf文件中修改
2)确定当前apache是什么MPM模式
进入apache/bin
命令,httpd.exe -l
说明,mpm_xxx c ,如果xxx是winnt,说明是winnt,另外还可能是prefork 或 worker
3)修改httpd-mpm.conf文件(调为1000)
4)重启apache,测试
ab.exe -n 10000 -c 1000 http://localhost/test.php
在Linux下,一般采用的MPM是prefork模式,如何配置=>
建议配置(针对大多数中型网站):
预先启动 5
最小空闲进程 5
最大空闲进程 10
ServerLimit 1500 /* 新加,用于修改apache编程参数 */
最大并发量 1000
保持进程不死 0
如果网站pv值上百万,修改:
ServerLimit 2500
最大并发量 2000
再多pv,一台apache已经不能满足需求,使用负载均衡或nginx反向代理。
------------------------------------------------------------------------------
Refer:什么是网页页面静态化