我需要比较相隔半个地球的两个客户端的网络延迟,并将请求来自的每个位置的响应时间历史记录可视化。我一直在研究负载和性能测试工具,发现Locust非常方便。有没有一种方法可以让我用Locust快速/标准/非黑客的方式实现我的目标?
发布于 2021-02-18 23:59:20
无论你的意思是,你需要两个不同位置的客户端运行相同的任务进行比较,还是两个不同位置的客户端运行两个不同的任务,Locust都可以处理这两种情况。
有关如何编写任务的详细信息,请查看文档的Tasks部分。您可以编写一个任务来完成您需要的两个任务,为每个启动的用户随机选择两个不同的任务,编写两个任务并对它们的随机性进行加权(包括将一个任务的权重设为0,这样它永远不会运行,有效地关闭一个任务,以便在那个时候只运行另一个任务),以及许多其他选项。哪种方法最好取决于你到底需要什么,以及你想怎么做。可能需要一些实验才能确定什么是最好的。
至于在多个位置运行,您可以在不同的位置单独运行测试并比较结果,或者Locust可以运行distributed,这样您就可以让工作人员在多个位置同时运行。您可能还想考虑使用Docker,如果您使用亚马逊网络服务、Azure、GCP或任何其他云提供商来旋转实例以在其上运行,在某些方面可以使在不同位置运行更容易。
https://stackoverflow.com/questions/66261754
复制相似问题