• 关于Apache服务器大量time_wait的问题


    今天访问我们自己的网站的时候有同事反映非常的慢,一开始怀疑是网络的问题。于是Ping了下我们自己的域名,发现延迟不高,只有30ms

    而且也很稳定,然后又用traceroute试了试是否网关路由有问题,发现也没有问题。然后百度了下相关的解决方案,我整理了下。

    首先我查看我的Apache服务器是否有开启KeepAlive,发现没有,然后在httpd.conf修改如下配置

    KeepAlive On 
    MaxKeepAliveRequests 100
    KeepAliveTimeout 15

    然后修改Linux下的/etc/sysctl配置:

    net.ipv4.tcp_syncookies = 1   表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
    net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
    net.ipv4.tcp_tw_recycle = 1  表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

    然后执行 /sbin/sysctl -p 让参数生效。

    再查的时候发现time wait已经降低很少了,再次访问我们的网站,果然快了很多。

    这里有一篇文章写得很详细:http://www.linuxyw.com/a/tiaoyou/20130527/470.html

  • 相关阅读:
    MySQL用户
    python -- 中
    Python -- 上
    Zabbix导入数据库时报错
    chmod无执行权限
    编译安装Tengine
    Nginx的调度算法
    nginx--第三方模块echo
    ngx_http_headers_module
    nginx---隐藏或添加后端服务器的信息
  • 原文地址:https://www.cnblogs.com/honeybaobao/p/4595854.html
Copyright © 2020-2023  润新知