阿里云首页

在Apache中进行ab压力测试时提示“apr_pollset_poll: The timeout specified has expired”

问题描述

Apache中进行ab压力测试时提示以下报错。

apr_pollset_poll: The timeout specified has expired

问题原因

由于压测的并发请求超出服务器的最大连接条目,在没有执行完就报错。

解决方法

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

请您参照以下步骤进行操作。

  1. 当您在进行ab压测时使用-k参数,并在Web服务器的/etc/sysctl.conf文件中添加以下内容。
    说明:-k指的是发送keep-alive指令到服务器端。
    net.ipv4.netfilter.ip_conntrack_max = 3276800
    net.ipv4.tcp_tw_recycle = 0
    net.ipv4.tcp_tw_reuse = 0
    net.ipv4.tcp_orphan_retries = 1
    net.ipv4.tcp_fin_timeout = 25
    net.ipv4.tcp_max_orphans = 8192
    net.ipv4.ip_local_port_range = 32768    61000
  2. 如果上述配置已经存在,请您加大net.ipv4.netfilter.ip_conntrack_max的值,然后执行以下命令使其生效
    sysctl -p /etc/sysctl.conf

适用于

  • 云服务器 ECS
首页 在Apache中进行ab压力测试时提示“apr_pollset_poll: The timeout specified has expired”