中间件-apache httpd详解

简介:

Apache起初由伊利诺伊大学香槟分校的国家超级电脑应用中心(NCSA)开发。此后,Apache Httpd被开放源代码团体的成员不断的发展和加强。Apache Http网站服务器拥有牢靠可信的美誉,已经在

全球超半数的网站中被使用-特别是几乎所有最热门和访问量最大的网站。比方说,维基百科网站服务器就是使用Apache的。

刚开始发展时,Apache只是Netscape网页服务器(现在是Sun ONE)之外的开放源代码选择之一。

它开始在功能和速度超越其他基于Unix的HTTP服务器。到了Apache 2.x的时代,实际效率又比Apache 1.x更快,2.x比1.x能同时服务更多的网页连接数。

1996年4月以来,Apache一直是Internet上最流行的HTTP服务器:1999年5月它在57%的网页服务器上运行,到了2005年7月这个比例上升到了69%。在2005年11月最风光的时候达到接近70%的市占率,

不过在部分拥有大量域名的主机域名商转换为微软IIS平台后,Apache市占率近年来呈现些微下滑。同时搜索引擎巨擘Google自己的网页服务器平台GWS推出后(也可说是一种修改版的Apache),再加上

nginx、Lighttpd等轻量化网页服务器软件在市场上有一些能见度,这些因素都反应在整体网页服务器市占率的消长,Apache的市占率就随之滑落。

根据Netcraft在2009年12月的最新统计数据,Apache的市占率已经降为53.67%,IIS降为18.26%,谷歌网页服务器13.53%,nginx 8.75%。尽管如此,Apache及其各种分支版本仍旧是当前互联网市场上,市占率最高的网页服务器软件

apache http server(简称apache)是现在使用世界排名第一的web服务器,几乎可以应用在任何平台。它是一个开源的网页服务器,特点是简单,速度快,稳定性高,还可以作为代理服务器。

特性:
  • 支持最新的HTTP/1.1通信协议
  • 配置文件简单,易操作,用户可以通过直接修改apache的配置文件信息来修改apache
  • 支持实时监控服务器状态和定制服务器日志
  • 支持基于IP和基于域名的虚拟主机
  • 支持多种方式的HTTP认证
  • 支持服务端包含指令(SSI)
  • 支持安全Socket层(SSL)
  • 支持用户会话过程的跟踪
  • 支持FastCGI
  • 通过第三方模块可以支持JavaServlets
  • 支持多进程



Apache主要目录和配置

查看apache全部配置内容 cat httpd.conf|egrep -v".*#|$"|nl

apache 工作模式

Apache一共有3中MPM(多进程处理模块)
prefork  worker  event 

Prefork MPM:在启动之初,会预派生fork一些子进程,然后等待请求进来,并且总会保持一些备用的子进程,同时派生出的每个子进程中都只有一个进程,在一个时间点内,只能处理一个请求。

worker MPM:是使用了多进程+多线程的模式。它也预先fork了几个子进程(数量比较少),每个子进程能够生成一些服务线程和一个监听线程,该监听线程监听接入请求并将其传递给服务线程处理和应答。

event MPM:event MPM中,会有一个专门的线程来管理这些 keep-alive 类型的线程,当有真实请求过来的时候,将请求传递给服务线程,执行完毕后,又允许它释放。这样,一个线程就能处理几个请求了,实现了异步非阻塞。

apache监控

在配置文件添加一段Location,配置完后重启apache,访问http://ip地址/server-status

将此段代码取消注释,并修改为如下所示

保存退出,重启 service httpd restart

定时刷新 http://ip/server-status?refresh=N  
每 N 秒自动刷新一次。

采集数据 http://ip/server-status?auto

apache监控指标

linux下监控apache

1.用 ps 来看 httpd 进程数: ps aux|grep httpd|wc -l

2.用 netstat 来看当前的连接数:netstat -ant|grep ":80"|wc -l

3.实时检测httpd连接数:watch -n 1 -d “pgrep httpd|wc -l”

4.计算httpd进程占用内在的平均数:ps aux|grep -v grep|awk ‘/httpd/{sum+=$6}; END{print sum/n}’

5.查看Apache的并发请求数及期TCP连接状态:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
















  1. Apache起初由伊利诺伊大学香槟分校的国家超级电脑应用中心(NCSA)开发。此后,Apache Httpd
  2.  
    开放源代码团体的成员不断的发展和加强。Apache Http网站服务器拥有牢靠可信的美誉,已经在
  3.  
    全球超半数的网站中被使用-特别是几乎所有最热门和访问量最大的网站。比方说,维基百科网站服务器
  4.  
    就是使用Apache的。
  5.  
    刚开始发展时,Apache只是Netscape网页服务器(现在是Sun ONE)之外的开放源代码选择之一。
  6.  
    它开始在功能和速度超越其他基于UnixHTTP服务器。到了Apache 2.x的时代,实际效率又比
  7.  
    Apache 1.x更快,2.x比1.x能同时服务更多的网页连接数。
  8.  
    1996年4月以来,Apache一直是Internet上最流行的HTTP服务器:1999年5月它在57%的网页服务器上
  9.  
    运行,到了2005年7月这个比例上升到了69%。在2005年11月最风光的时候达到接近70%的市占率,
  10.  
    不过在部分拥有大量域名的主机域名商转换为微软IIS平台后,Apache市占率近年来呈现些微下滑。
  11.  
    同时搜索引擎巨擘Google自己的网页服务器平台GWS推出后(也可说是一种修改版的Apache),再加上
  12.  
    nginxLighttpd等轻量化网页服务器软件在市场上有一些能见度,这些因素都反应在整体网页服务
  13.  
    器市占率的消长,Apache的市占率就随之滑落。
  14.  
    根据Netcraft在2009年12月的最新统计数据,Apache的市占率已经降为53.67%,IIS降为18.26%,
  15.  
    谷歌网页服务器13.53%,nginx 8.75%。
  16.  
    尽管如此,Apache及其各种分支版本仍旧是当前互联网市场上,市占率最高的网页服务器软件
原文地址:https://www.cnblogs.com/yiyaxuan/p/12721990.html