C++服务器 - 超过1024个连接
问题描述:
我有一个C++聊天服务器,在linux中运行并使用libev库。如果我尝试连接超过1024个客户端,它将会以-1文件描述符的方式崩溃。C++服务器 - 超过1024个连接
我想允许超过1024并发连接到服务器。看看libev文档,看起来它可以配置为使用select,poll和epoll,尽管我不确定默认是什么。
有关如何使用libev增加文件描述符限制的任何提示或参考将不胜感激!
答
您需要增加允许的每进程文件句柄。您可以允许用户使用更多的文件句柄与此:
# Put this in /etc/security/limits.conf
someusername soft nofile 65535
someusername hard nofile 65535
(其中someusername是将运行程序的用户)
+0
而相关的系统调用是[setrlimit(2)](http://man7.org/linux/man-pages/man2/setrlimit.2.html)与'RLIMIT_NOFILE' – 2013-04-29 05:23:40
http://www.kegel.com/c10k.html – 2013-04-28 22:32:18