httpd.conf文件中的主要配置参数:
ServerType //服务器的两种类型为standalone和inetd
ServerRoot //设置服务器目录绝对路径,包含conf和log子目录
Pidfile //服务器用以记录开始运行时的进程ID号的文件
KeepAlive off //设置是否运行保持连接,off表示不允许
ServerAdmin //设置为管理服务器的Web管理人员的地址
ServerName //设置服务器将返回的主机名
DocumentRoot //设置为文档目录树的绝对路径
UserDir //定义和本地用户的主目录相对的目录
DirectoryIndex //指明作为目录索引的文件名
TimeOut //设置超时时间,以秒为单位,默认为120秒
MaxSpareServers //设置Apache的最大空闲进程数
StartServers //指明启动Apache时运行的进程数
MaxKeepAliveRequests //设置每个连接的最大请求数,默认为100,设为0则没限制
KeepAliveTineout //指定连续两次连接的间隔时间,默认为15秒
Listen //设置Apache的监听端口,默认在TCP80端口监听客户端请求
BindAddress //设置Apache只监听特定的IP地址
LinitRequestBody //设置HTTP请求的消息主体的大小
MaxClients //设置Apache在同一时间的最大连接数
nagios监控前端apache 80端口,同时也有监控后端webserver的端口,偶尔会出现apache端口超时的报警。但是后端服务器响应正常。基本上确定问题出现在apache上。
登陆到机器上检查问题,通过以下几点基本上能确定问题所在了。
- 系统负载正常,cpu利用率正常。
- 内存已经被分配殆尽。
- ps -ef | grep httpd | wc -l ,看到已经有1024个进程,已经达到配置文件中maxclient的限制。
所以问题应该是并发访问量比较高,导致进程数已经达到配置中的限制。由于配置了长连接而且时间比较长15秒,所以在高并发的访问环境中导致没有空闲的进程来接收新的访问。这个时候访问就需要等待了。所以nagios会报超时。
分析下日志统计出每个访问基本上在5秒内就没有连续的请求了,因此把keepalivetimeout时间改成5秒。
然后reload配置文件。 apachectl -k graceful
对于几个apache的配置不是特别清楚特意记录一下。
TimeOut 指令
服务器在断定请求失败前等待的秒数 |
TimeOut seconds |
TimeOut 300 |
server config |
核心(C) |
core |
TimeOut
指令用于设置Apache等待以下三种事件的时间长度:
- 接受一个GET请求耗费的总时间。
- POST或PUT请求时,接受两个TCP包之间的时间。
- 应答时TCP包传输中两个ACK包之间的时间。
我们计划在发展里程中,逐步把它们分别变得更易配置。计时器在1.2版本之前的默认值为1200,而现在已经设置为300了,但对于绝大多数情况来说仍是足够的。没有把它默认值设的更小的原因在于代码里还有点问题:有时发送一个包之后,计时器没有复位。
KeepAliveTimeout 指令
持久链接中服务器在两次请求之间等待的秒数 |
KeepAliveTimeout seconds |
KeepAliveTimeout 5 |
server config, virtual host |
核心(C) |
core |
Apache在关闭持久连接前等待下一个请求的秒数。一旦收到一个请求,超时值将会被设置为Timeout
指令指定的秒数。
对于高负荷服务器来说,KeepAliveTimeout
值较大会导致一些性能方面的问题:超时值越大,与空闲客户端保持连接的进程就越多。
相关推荐
CentOS Apache 配置详解 Apache 是一个流行的网页服务器软件,CentOS 也是一个流行的 Linux 发行版。在本文中,我们将详细介绍如何在 CentOS 上配置 Apache,以便实现网页服务器的功能。 一、 Apache 的安装和...
### CentOS 下 Apache 配置多域名或多端口映射详解 #### 一、概述 在 CentOS 系统中,Apache 是一个广泛使用的 Web 服务器软件,它可以用来托管多个不同的网站或应用服务。为了实现这一点,我们需要对 Apache 进行...
Apache 配置负载均衡实现访问请求分流提高访问性能 Apache 配置负载均衡是将所有用户的访问压力分散到多台服务器上,也可以分散到多个 Tomcat 里,提高访问性能。负载均衡的主要目标是将用户的访问请求分流到多个...
一、Apache配置文件基础 Apache的主配置文件通常是`httpd.conf`,位于安装目录下的`conf`子目录中。这个文件包含了服务器的基本设置,如端口监听、服务器根目录、MIME类型定义等。另外,Apache支持使用`.htaccess`...
Apache配置详解 最好的APACHE配置教程 包你满意
从给定的文件信息中,我们可以提取到关于Apache配置文件httpd.conf的多个关键知识点,以下是对这些知识点的详细解析: ### Apache配置文件httpd.conf的重要性 Apache的配置文件httpd.conf是Apache服务器的核心配置...
Apache配置 笔记.doc
Apache配置手册,服务器环境设置。很是很新手使用的一本书。
Linux下Apache配置详解 学习必备
### LoadRunner Apache配置详解 #### 一、LoadRunner与Apache服务器监控 LoadRunner是一款功能强大的负载测试工具,广泛应用于各种Web应用的性能测试之中。它不仅能够模拟大量虚拟用户访问Web应用,还提供了多种...
学习Apache配置的目标是理解Web基本概念,掌握Apache配置指令,包括基本配置、多站点配置、安全和性能优化。此外,熟悉Apache的日常管理命令,如启动、停止和监控,对于维护稳定高效的Web服务至关重要。通过这些知识...
### Apache配置多端口及Apache端口修改方法详解 在多服务器环境或单一服务器上运行多个站点时,正确配置Apache的端口变得至关重要。本文将深入解析如何在Apache中配置多端口,以及如何修改Apache的默认端口,确保您...
在IT领域,Apache配置文件是运维工程师和开发者必须掌握的核心知识点之一。Apache作为全球最流行的Web服务器软件之一,其配置的灵活性和功能的丰富性使其成为处理大量网站和应用程序请求的理想选择。本文将深入解析...
Apache配置详解(最好的APACHE配置教程
本教程将深入探讨Apache配置的各个方面,旨在提供一个全面而详尽的指南,帮助你理解和优化你的Apache服务器。 一、Apache基础 Apache服务器是用C语言编写的,它通过HTTP协议向客户端提供静态和动态内容。Apache的...
Apache配置手册是Web服务器管理员和开发者的重要参考资料,它详尽地介绍了如何安装、配置和管理...通过深入学习和实践这份Apache配置手册,你可以掌握Web服务器的日常管理和高级配置技巧,提升网站的稳定性和效率。
### 使用Apache配置反向代理服务器 #### 一、反向代理的基本概念 反向代理(Reverse Proxy)是一种网络架构模式,其中代理服务器接收来自互联网的请求,并将其转发给内部网络中的真实服务器。处理完请求后,代理...