OpenSSL 配置最大连接数
OpenSSL configure maximum number of connections
我的应用程序在SSL_read
内部出现段错误之前持有 950-970 个 SSL 连接。 是否可以将 OpenSSL 配置为接受比这更多的连接?
我已经将其编程为在获取连接后不对连接执行任何操作,因此我知道这是打开连接的#的函数,而不是当前读取/写入或时间的连接#的函数。
更新:
- 在同一个地方的 ubuntu 上出现相同的错误。 我正在研究 ubuntu 向前发展。
- 如果我在相同数量的连接下将计算机大小(RAM、交换、CPU)加倍,则会出现同样的错误。
- 上下文不为空。
-
ulimit -n
设置为 4096。 我已经通过设置ulimit -100
来验证这一点,在这种情况下观察到不同的错误。 - 即使线程已池化,也会出现问题。 无论有 1 个线程/连接还是 1 个线程/10 个连接,问题都会在相同数量的连接处发生。
我正在尝试在启用调试选项的情况下从源代码构建 OpenSSL。 我开始怀疑这是否需要几个小时或告诉我任何有用的东西。 我在这里有一个问题。
我已经确定段错误发生在openssl v 1.0.1.c中的这一行:
ssl_lib.c:968
968 return(s->method->ssl_read(s,buf,num));
此外,我已经确定这不是ssl_read
函数内部的段错误(应该指向ssl3_read
)。 method
的成员ssl_read
实际上本身是无效的,它本身似乎也是无效method
(我是根据"奇怪的地址"推断的。
恕
我直言,您似乎达到了某个极限。正如您所说,数字文件描述符是可以的。因此,您可以尝试使用 ulimit
增加堆栈大小。例如:
ulimit -s 32768
此外,您可以使用像valgrind这样的工具来帮助您找出应用程序段错误时真正发生的事情。
希望对您有所帮助。
相关文章:
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- 无法找到/读取配置文件.conf-FileIOException
- 当套接字连接断开时检测C/C++Unix
- 在WSL:configure_file上对config_file的每次调用都失败:配置文件时出现问题
- 一种在C++中读取TXT配置文件的简单方法
- 生成MRPT库时cmake配置失败
- 无法在windows上使用mingw将sqlite3与c连接
- FFMPEG配置文件级别id大小无效
- 如何通过Conan和CMake找到用于pkg配置的.pc文件
- 到连接组件算法的问题(递归)
- QTcpSocket在不阻塞GUI的情况下重新连接到服务器
- 无法在C++中建立与MySQL数据库的连接
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- 在Qt Creator中,如何在连接到正在运行的进程后查看控制台输出
- 连接 dockerized 模型和 dockerized 数据库时出现"无法 SQLConnect"错误
- 使用 bfs 解决连接组件问题时得到错误的答案
- 使用C 驱动程序在Cassandra中配置连接池
- 在实体框架C /CLI上配置连接字符串
- OpenSSL 配置最大连接数
- Qt SQL -配置连接到数据库