`
zyz
  • 浏览: 25070 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

apache2.2设置最大连接数

阅读更多
Apache的最大连接数,默认为256个。

    修改apache的最大连接数,方法如下:
  
    步骤一:先修改./apache/conf/httpd.conf文件。
        # vi httpd.conf
        将“#Include conf/extra/httpd-mpm.conf”前面的 # 去掉。
        保存。
  
    步骤二:再修改./apache/conf/extra/httpd-mpm.conf文件。
        # vi httpd-mpm.conf
       找到<IfModule mpm_prefork_module> 这一行
          原:
             <IfModule mpm_prefork_module>
              StartServers         5
              MinSpareServers      5
              MaxSpareServers      10
              MaxClients           150
              MaxRequestsPerChild  0
           </IfModule>

        修改后
            <IfModule mpm_prefork_module>
              Apache的最大连接数,默认为256个。

    修改apache的最大连接数,方法如下:
  
    步骤一:先修改./apache/conf/httpd.conf文件。
        # vi httpd.conf
        将“#Include conf/extra/httpd-mpm.conf”前面的 # 去掉。
        保存。
  
    步骤二:再修改./apache/conf/extra/httpd-mpm.conf文件。
        # vi httpd-mpm.conf
       找到<IfModule mpm_prefork_module> 这一行
          原:
             <IfModule mpm_prefork_module>
              StartServers         5
              MinSpareServers      5
              MaxSpareServers      10
              MaxClients           150
              MaxRequestsPerChild  0
           </IfModule>

        修改后
            <IfModule mpm_prefork_module>
              StartServers         5
              MinSpareServers      5
              MaxSpareServers      10
              ServerLimit          1500
              MaxClients           1000
              MaxRequestsPerChild  0
        

    注意:1、一定要加ServerLimit,并且要在MaxClients前面,且数值要比MaxClient的值大;
          2、重启apache,仅仅/bin/apachectl restart无效,
             需要先apachectl stop 然后再apachectl start


对apache中并发控制参数prefork理解和调优
一个apache有linux下的并发不是很高的,大约到3K的样子,普通的服务器都会不同程度的出现问题.apache有关并发控制主要是prefork和worker二个其中一个来控制.我们可以使用httpd -l来确定当前使用的MPM是prefork.c,还是Worker.c.下面是apache中有关prefork的配置.下面是我优化过的参数.
<IfModule prefork.c>
#有这个参数就不必像apache1一样修改源码才能修改256客户数的限制,听讲要放到最前面才会生效,2000是这个参数的最大值
ServerLimit 2000
#指定服务器启动时建立的子进程数量,prefork默认为5。
StartServers 25
#指定空闲子进程的最小数量,默认为5。如果当前空闲子进程数少于MinSpareServers ,那么Apache将以最大每秒一个的速度产生新的子进程。此参数不要设的太大。
MinSpareServers 25
#设置空闲子进程的最大数量,默认为10。如果当前有超过MaxSpareServers数量的空闲子进程,那么父进程将杀死多余的子进程。此参数不要设的太大。如果你将该指令的值设置为比MinSpareServers小,Apache将会自动将其修改成"MinSpareServers+1"。
MaxSpareServers 50
#限定同一时间客户端最大接入请求的数量(单个进程并发线程数),默认为256。任何超过MaxClients限制的请求都将进入等候队列,一旦一个链接被释放,队列中的请求将得到服务。要增大这个值,你必须同时增大ServerLimit 。
MaxClients 2000
#每个子进程在其生存期内允许伺服的最大请求数量,默认为10000.到达MaxRequestsPerChild的限制后,子进程将会结束。如果MaxRequestsPerChild为"0",子进程将永远不会结束。
MaxRequestsPerChild 10000
</IfModule>
将MaxRequestsPerChild设置成非零值有两个好处:
1.可以防止(偶然的)内存泄漏无限进行,从而耗尽内存。
2.给进程一个有限寿命,从而有助于当服务器负载减轻的时候减少活动进程的数量。
工作方式:
一个单独的控制进程(父进程)负责产生子进程,这些子进程用于监听请求并作出应答。Apache总是试图保持一些备用的 (spare)或者是空闲的子进程用于迎接即将到来的请求。这样客户端就不需要在得到服务前等候子进程的产生。在Unix系统中,父进程通常以root身份运行以便邦定80端口,而 Apache产生的子进程通常以一个低特权的用户运行。User和Group指令用于设置子进程的低特权用户。运行子进程的用户必须要对它所服务的内容有读取的权限,但是对服务内容之外的其他资源必须拥有尽可能少的权限。
我们调优常常要查看httpd进程数(即prefork模式下Apache能够处理的并发请求数):
#ps -ef | grep httpd | wc -l
出现的结果,就是当前Apache能够处理的多少个并发请求,这个值Apache根据负载情况自动调.
查看Apache的并发请求数及其TCP连接状态:


状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放 处理完毕,等待超时结束
LAST_ACK:等待所有分组死掉
分享到:
评论

相关推荐

    Apache2.2 tomcat-6.0.18负载均衡与集群

    该模块允许Apache将请求转发给一组后端服务器,可以根据不同的策略,如轮询、最少连接数或基于IP哈希等进行负载分配。 在Apache2.2与Tomcat-6.0.18的环境中,JK模(mod_jk)式是一种常见的集成方式。mod_jk是Apache...

    Apache2.2安全配置和性能优化

    - **理论最大值计算**:根据服务器硬件资源(如内存大小),可以大致估算出能够支持的最大并发连接数。例如,假设每进程占用200KB内存,服务器总内存为2GB,去除必要的系统服务占用(约500MB),剩余内存大约为1.5...

    apache2.2安装包

    2. 性能优化:启用缓存模块(如mod_expires和mod_deflate),调整KeepAlive选项,限制并发连接数,优化日志记录级别以减少磁盘I/O。 总结,Apache 2.2作为Web服务器为PHP应用程序提供了稳定的基础。正确安装、配置...

    设置Apache最大连接数

    ### 设置Apache最大连接数 #### 知识点一:理解Apache最大连接数的重要性 在Web服务器的运维过程中,Apache作为一款广泛使用的Web服务器软件,其性能优化至关重要。特别是在高并发场景下,合理设置Apache的最大...

    apache 2.2 完全手册

    2. MaxKeepAliveRequests:设置每个连接的最大请求数,以防止资源耗尽。 3. Timeout和KeepAliveTimeout:分别设置服务器等待客户端请求的时间和保持连接活跃的时间。 四、URL重写与代理 mod_rewrite模块提供了...

    apache2.2 forwindow

    - Apache2.2支持多种性能优化策略,如`KeepAlive`(保持连接)、`MaxKeepAliveRequests`(最大连接请求数)和`KeepAliveTimeout`(连接超时时间)等,可以根据服务器的负载情况进行调整。 8. **下载安装说明.txt**...

    apache2.2文档.rar

    这份“apache2.2文档.rar”压缩包包含了关于Apache 2.2的详尽指南,对于管理员、开发者以及对服务器配置感兴趣的用户来说,是一个极其宝贵的资源。 一、Apache 2.2核心概念与特性 1. **模块化设计**:Apache 2.2...

    apache2.2 和2.4 mod_jk 1.2.4

    注意,为了确保安全和性能,你应该根据实际情况调整`worker.properties`中的参数,例如最大连接数、超时设置等。同时,正确配置SSL和虚拟主机也是必要的,特别是当你处理敏感数据或运行多个网站时。 总的来说,`mod...

    Apache2.2与tomcat7 集群配置

    - `workers.properties`:定义了Apache和Tomcat之间的连接器(worker),包括Tomcat实例的地址、端口、最大连接数等信息。 - `httpd.conf`或`vhosts.conf`:Apache的主配置文件或虚拟主机配置文件,其中包含了启用...

    apache2.2手册

    Apache提供status和info模块,用于实时查看服务器状态,如连接数、请求数、内存使用等。对于问题定位,可以启用LogLevel调试信息,或使用mod_dumpio模块查看网络交互细节。 总结,Apache 2.2手册是一份详尽的参考...

    Apache2.2和Tomcat7集成负载均衡(软件和教程)

    - 调整Apache和Tomcat的配置参数,如最大连接数、超时时间等,以适应不同流量需求。 此外,对于"疯狂的IT人",这个标签可能意味着深入研究和实践这些技术是必要的。理解Apache和Tomcat的集成原理,掌握负载均衡...

    Apache2.2 with mod_jk

    在Tomcat集群中,mod_jk负责负载均衡,它可以根据不同的策略(如轮询、最少连接数等)将请求分发到各个Tomcat实例。如果一个服务器出现故障,mod_jk可以自动将流量路由到其他健康的服务器,确保服务的高可用性。 ...

    Apache2.2中文手册

    9. **性能优化**:包括调整并发连接数、开启HTTP/2支持、使用缓存模块(如mod_cache)以及合理的资源分配等策略,以提高服务器性能。 10. **安全注意事项**:保持Apache及时更新以修复安全漏洞,使用安全的配置,...

    apache2.2_安装,优化、模块配置

    - `MaxClients`: 最大同时连接数。 - `MinSpareThreads`: 保持最少空闲线程数。 - `MaxSpareThreads`: 保持最多空闲线程数。 - `ThreadsPerChild`: 每个子进程创建的线程数。 - `MaxRequestsPerChild`: 每个子...

    apache-2.2 安装包

    6. **性能优化**:Apache 2.2包含了一些性能优化选项,如`KeepAlive`和`MaxKeepAliveRequests`,用于控制连接保持活动状态的时间,以及在关闭连接前允许的最大请求数。 7. **错误日志和访问日志**:Apache可以生成...

    apache2.2开发手册

    这个"apache2.2开发手册"是为开发者、系统管理员和爱好者提供的一份详细指南,帮助他们理解和配置Apache服务器。这份手册以HTML形式呈现,方便离线浏览或集成到个人Web站点作为在线参考。 手册涵盖了以下几个主要...

    apache2.2用户手册

    6. **性能优化**:手册提供了调整Apache性能的建议,如调整并发连接数、启用KeepAlive等。 7. **安全性**:包括如何配置SSL/TLS加密通信,防止DDoS攻击,以及安全配置最佳实践。 8. **错误处理与调试**:手册介绍...

    apache2.2整合resin3+Eclipse远程调试

    - `MaxRequestsPerChild 0`:设置每个子进程可以处理的最大请求数,0表示不限制。 2. 设置监听端口,确保与其它服务不冲突,例如配置`Listen 80`和`ServerName localhost:80`。 3. 加载Resin模块,找到`...

    apache2.2+php5.2+MYSQL5.0+phpMyAdmin2.9+Zend 配置文档

    安装后需创建数据库用户,分配权限,并通过`my.cnf`配置文件调整性能参数,如缓存大小、最大连接数等。 4. **phpMyAdmin2.9**: phpMyAdmin是一个基于Web的MySQL数据库管理工具,使用PHP编写,使得数据库管理变得...

    Apache2.2+tomcat6.0搭建负载均衡服务器

    Apache2.2与Tomcat6.0的组合可以构建一个高效、可靠的负载均衡服务器系统,以分散客户端请求到多个后端...然而,实际部署中可能还需要考虑SSL配置、安全策略、性能优化和其他高级负载均衡策略,如轮询、最少连接数等。

Global site tag (gtag.js) - Google Analytics