zoukankan      html  css  js  c++  java
  • php连接memcahed出现Cannot assign requested address (99)的解决方法

      今天在将服务器合并后,发现php偶尔会报出 Server *.*.*.* (tcp *****) failed with: Cannot assign requested address (99) 的错误,开始怀疑是由于memcached服务器无法处理过多的请求,查看memcached服务器并未发现异常。在网上查到了问题的分析和解决方法。

    问题分析:

    客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端 口号,所以新的连接没办法绑定端口,即“Cannot assign requested address”。是客户端的问题不是服务器端的问题。通过netstat,的确看到很多TIME_WAIT状态的连接。
    可见问题不在于server端,而是client端频繁建立连接,而端口释放较慢,导致建立新连接时无可用端口。

    解决方法:
    执行命令修改如下2个内核参数 (需要root权限)  sysctl -w net.ipv4.tcp_timestamps=1  开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用 sysctl -w net.ipv4.tcp_tw_recycle=1  表示开启TCP连接中TIME-WAIT sockets的快速回收

    原帖地址:http://blog.csdn.net/mmbl007/article/details/7446970

  • 相关阅读:
    【18焦作网络赛 J】 大数开方
    最小圆覆盖
    高斯消元
    回文自动机 PAM
    后缀自动机 SAM
    后缀数组 SA
    左偏树(可并堆)
    动态树LCT(Link-Cut-Tree)
    职场自我推销10大金点子
    数据库笔记
  • 原文地址:https://www.cnblogs.com/phpnow/p/3279017.html
Copyright © 2011-2022 走看看