您的位置:首页 > 运维架构 > Apache

Web服务器---Apache

2019-06-04 05:45 1686 查看

1. apache的配置文件(路径可能不同,但文件名应该不会变): /etc/httpd/conf/httpd.conf 

2. 可执行文件在:/usr/sbin

3. apache服务启动的命令:service httpd start  (status   stop    restart)

4. apache的调优:vi /etc/httpd/conf/httpd.conf


第一:工作模式的调优

    -------通过  httpd -l  可以查看当前模式

  • Prefork模式:使用多个子进程,每个子进程只有一个线程,效率高,每个请求相互独立,若一个请求出现问题不会影响到其他请求,但内存占用大

    

     MaxClients:如果需要设置此参数,那么先设置ServerLimit,两者大小可以一样,但不能超过ServerLimit


  • Worker模式:使用多个子进程,每个子进程有多个线程,内存占用小,适合高流量的http服务器,但如果一个线程崩溃,整个进程就会一起死掉

    互联网企业一般高流量高并发,应该考虑使用这种模式,因为用的是多线程。至于缺点,可以使用负载均衡等技术手段,尽可能降低。

    

    ThreadsPerChild:如果需要设置此参数,那么先设置ThreadLimit,两者大小可以一样,但不能超过ThreadLimit


第二:关键参数的调优

  • Timeout:指定apache的超时时间,单位秒,若超过该时间,apache放弃处理该请求,并释放连接,该参数默认值为120,推荐设置为60,对于访问量较大的网站可以设置为30或15

  • KeepAlive:在内存非常充足的服务器上,不管是否关闭此功能,服务器性能不会有明显变化;如果服务器内存较少,或者主要处理动态网页服务,关闭它可以节省很多内存;静态服务的处理建议打开

  • 过期时间:充分利用缓存(这里指的是客户端缓存,可以理解为浏览器的缓存)Expires头信息是客户端缓存的重要依据,如果当前时间小于Expires指定的时间,浏览器就会从缓存中直接获取相关的数据信息或HTML文件,反之,浏览器会向服务器发送请求来获取。

    去掉LoadModule expires_module modules/mod_expires.so前面的 # 

    设置完成,保存,重启apache即可生效。

  • 开启gzip:压缩Internet传输的所有文本类资源,如html, css, js,比如利用QQ传送大文件的时候,压缩之后传送速度明显快于压缩之前

    去掉以下2个前面的 #

    LoadModule deflate_module modules/mod_deflate.so

    LoadModule headers_module modules/mod_headers.so

    压缩级别,不要设置太高,否则会占用太多cpu。

    设置完成,保存,重启apache即可生效。

    如果想验证,可以通过Firebug或F12等工具,查看请求和响应,如果请求头内包含Accept-Encoding:gzip,deflate,sdch,则表示当前请求支持的压缩格式;如果响应头内包含Content-Encoding:gzip,则表示响应内容已经进行了gzip压缩

  • HostnameLookups:设置为off,尽量减少DNS查询的次数


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: