Unix(Gnu/Linux、Mac OS X)程序或命令,用于计算程序建立的 HTTP 连接数

Unix(Gnu/Linux、Mac OS X)程序或命令,用于计算程序建立的 HTTP 连接数

我有一个用于执行大量 HTTP 请求的应用程序测试套件。

每次运行测试时,此数字都会发生变化。是否有 Unix 命令或程序可以“监听”另一个程序并计算其 http 请求数?

答案1

任何数据包嗅探器都可以帮你做到这一点。查看tcpdump或者 wireshark。您必须对他们收集的数据设置一些过滤器,但这很容易。

答案2

  • truss您可以使用/ trace/ /...跟踪应用程序的系统调用strace(名称、命令行语法和输出格式取决于操作系统),并观察connect调用。如果您的应用程序还使用非 HTTP 网络,您可能需要付出更多努力来过滤相关连接。

  • 您可以使用LD_PRELOAD或调试器来修改创建 HTTP 连接的函数。但这对于测试来说可能太过干扰。

  • 您可以在应用程序和 Web 之间放置一个简单的代理。perl 和 python 都带有库,这些库会使其成为一个 10-20 行的程序。除非您要专门针对特定服务器或代理测试应用程序的行为,否则我更喜欢这种方法。

相关内容