gpt4 book ai didi

performance - 您使用什么来测试(功能/负载/压力)您的网络服务及其自定义协议(protocol)?

转载 作者:行者123 更新时间:2023-11-28 19:50:19 27 4
gpt4 key购买 nike

我最近创建了一个回合制游戏服务器,可以接受数以万计的同时客户端连接(长话短说 - Linux 上的 epoll)。通信基于简单、自定义、基于线路的协议(protocol)。该服务器允许客户端连接、寻找游戏比赛中的其他玩家、玩所述游戏(发送 Action 、聊天消息等),并在游戏结束时收到通知。

我现在要做的是通过模拟客户端连接来测试服务器。我希望支持 10 到 000 个同时连接,所以这个测试对我来说非常重要。你们用什么进行自己的测试?

我现在正在研究的一些东西是:pexpect(用于功能测试的 python expect lib)和用于负载测试的 tsung。

我希望能够从我的笔记本电脑上进行测试,因为我没有要连接的客户端机器集群。也许我需要使用 ip 别名或类似的东西来生成数以千计的出站套接字(每个接口(interface) AFAIK 限制为 65K)。

无论如何,在我看来我需要一些相当定制的东西,但我想在我走那条路之前先问一下。

谢谢!

最佳答案

我用过 JMeter使用自定义采样器和断言组件,然后使用自定义协议(protocol)(基于 Java RMI 的 API)对银行应用程序进行自动回归/负载测试。

虽然它不完全是轻量级的,但您最终会在 JMeter 组件中执行大量额外编码以支持您的自定义协议(protocol)。我猜在这种情况下您必须编写自己的基于 Java 套接字的客户端。

但它为您定义测试组件的逻辑提供了很大的灵 active ,因此您可以在其中做任何您想做的事情。它的扩展性也很好,并允许您在被测系统上建立大量并发连接。

关于performance - 您使用什么来测试(功能/负载/压力)您的网络服务及其自定义协议(protocol)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/434438/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com