Skip to main content
 首页 » 编程设计

python之用于性能测试的多个同时 tcp 客户端连接

2025年05月04日10wayfarer

我需要同时创建多个 TCP 连接到一些自定义 TCP 服务器应用程序以进行性能测试。我知道很多这样的网络(即 curl-loader 基于 libcurl ),但我没有找到一些通用的。
客户端的场景是最简单的:创建连接、发送特殊数据、读取答案并关闭连接。每一步都有时间戳。所有时间戳都应写入文件以供进一步计算。我需要大约 10 000 个这样的并行连接。
我更喜欢一些现成的解决方案,但在 Google 中找不到任何解决方案,所以我准备用 Python 编写这个解决方案。如果是这样,你能给我推荐一个可以产生这么多连接的合适的 python 模块吗? (多处理,扭曲..?)

请您参考如下方法:

我的两分钱:

  1. 选择 Twisted 或任何其他异步网络库。
  2. 确保您可以在客户端和 服务器。例如,在我的 Linux 机器上,我最多只能有 1024 个文件 默认文件描述符:

    carlos@marcelino:~$ ulimit -a 
    core file size          (blocks, -c) 0 
    data seg size           (kbytes, -d) unlimited 
    [..] 
    open files                      (-n) 1024 
    [..] 
    
  3. 在不同的机器上运行客户端和服务器可能会产生费用。