我被要求开发一个使用 gnutls 的传输客户端(我使用的是 3.4.1)。
我还想模拟更多数量的此类 tls 客户端。
在我的应用程序中,每个客户端都是一个单独的进程。
我的每个进程都与 gmp、nettle 和 gnutls 库动态链接。
如果没有 tls,我可以在我的机器(8 gb RAM)中轻松模拟超过 10k 的连接(使用 tcp/udp)。
但是有了 tls,我无法模拟超过 800 个连接。记忆正在枯竭,这对我来说是一个大问题。
我使用 Valgrind 内存检查工具运行,我看到零错误和零警告。
任何人都可以帮助我在构建 gnutls 时应该注意什么,以便对其进行优化并尽可能地使用它。