【问题标题】:PUSH-000191: Diffusion server: Too many open filesPUSH-000191:扩散服务器:打开的文件太多
【发布时间】:2016-07-25 09:41:56
【问题描述】:

我的 Diffusion 服务器有问题。以下错误在服务器日志中多次出现:

|WARN|Client Connector Thread|PUSH-000191|Connector 'com.pushtechnology.diffusion.io.nio.
AcceptSelector$SelectorEventHandler@2f6b3a50:'
- Unable to accept connection.|com.pushtechnology.diffusion.io.nio.AcceptSelector 
java.io.IOException: Too many open files

我知道这可能是由于打开了太多文件描述符。有人知道如何解决这个问题吗?

【问题讨论】:

    标签: push-diffusion


    【解决方案1】:

    当达到可以为一个进程同时打开的文件数(关联的文件描述符)时,将显示此消息。这可能是由几个不同的原因造成的,例如:

    • 您的部分解决方案代码泄漏了文件描述符(如果您使用的是发布者)。
    • 您的负载平衡器在使用后保持 TCP 套接字打开。

    您可以通过运行JConsole 并检查MBeans/java.lang/OperatingSystem/Attributes 中的值来确定操作系统强加的最大文件描述符计数的当前值。您需要的数据在MaxFileDescriptorCountOpenFileDescriptorCount 下。当OpenFileDescriptorCount 达到MaxFileDescriptorCount 设置的限制时,会输出您看到的警告。

    为了解决这个问题,您需要增加MaxFileDescriptorCount 的值。这可以通过修改 Diffusion 的启动脚本来完成。只需将以下行添加到diffusion.sh

    ulimit -n 8192
    

    Knowledge Base article 包含有关显示java.io.IOException: Too many open files 警告消息的问题的更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-09
      • 2011-07-18
      • 2019-10-30
      相关资源
      最近更新 更多