【问题标题】:Load testing strategies for network server applications网络服务器应用程序的负载测试策略
【发布时间】:2010-11-16 15:00:57
【问题描述】:

我正在构建一个 Windows 服务,它通过 TCP 侦听连接,一旦建立连接,就会发送稳定的数据流。很简单……一旦发出初始请求,通信就是单向的(当然是在应用层)。

有什么好的方法可以在负载很大的情况下进行测试,比如最多 3,000 个同时连接?这种事情有标准工具吗,还是我应该自己写?

【问题讨论】:

    标签: .net performance networking network-programming load-testing


    【解决方案1】:

    我感觉你已经编写了自己的协议,所以我认为你就像坚持实现自己的负载测试客户端一样。

    为这样的事情编写负载测试客户端并不难。不过,我唯一建议的是真正考虑您是要测试来自一台物理机器还是多台物理机器的连接。我并不是说你应该从 3,000 台物理机器上进行测试,但是像 10 或 20 台机器是个好主意。否则你很有可能客户端机器成为瓶颈。

    另外,要真正测试服务器,您必须有一个良好的负载测试实现。如果您看到负载测试器的处理器使用率保持在 100%,那么您不是在测试服务器;您正在测试客户端。

    【讨论】:

    • 感谢您的建议。我想我很可能会走这条路。也许当我完成后,我会构建一个通用的测试实用程序并将其发布给其他人使用。可以将预定义的数据块发送到服务器并接受响应的东西。我对自己的优化能力不太自信,这就是为什么我希望标准工具已经存在,但检查测试仪是否超载很容易。再次感谢。
    • 好吧,我能给出的最好建议是采用异步实现 (BeginRead/BeginWrite) 而不是多个进程。这是最重要的一点之一,将增加您的客户端吞吐量。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多