我正在为一个自定义应用程序开发一个基于 Linux 的测试工具,它需要为外部系统创建大约 200,000 个套接字,然后通过所述套接字生成流量并创建一些性能指标。
我想知道的是在 Linux 中执行此操作的最佳方法。首先,要拥有 200,000 个套接字,我们肯定会达到 FD 限制。FD限制可以增加这么高(在非常强大的机器上)吗?或者我们可以期望获得每个 Linux 实例的什么样的合理最大值?
此外,实现这种工具的最简单的第一个想法是每个测试客户端一个线程,这将创建连接、发送流量、测量性能等。我们可以为内核中的线程获得什么样的最大数量?还是让多个工作线程处理端点子集更有意义?
这是否可能使用一个 Linux 实现,或者将其拆分为多个服务器是唯一的选择?