我正在构建一个小型实用程序来打包Locust - 性能测试工具(https://locust.io/)并将其部署在azure函数上。这是一个有趣的侧面项目,可以帮助您解决无服务器热潮问题。
这里是git repo:https://github.com/amanvirmundra/locust-serverless。
现在我认为在无服务器架构(天蓝色功能消费计划)上以分布式模式运行蝗虫测试会很棒。 Locust支持分布式模式,但它需要从设备使用它的IP与主设备通信。这就是问题!!
我可以提供多种功能,但我不太确定如何让它们在运行中互相交谈(无需人工干预)。
大声思考:
需要建议找出什么可能同时保持服务器无服务器。对想法和/或代码贡献开放:)
更新
这是当前的设置:
我现在要做的是进行大规模性能测试的主/从设置(群集)。
答案 0 :(得分:0)
您所描述的内容并非听起来像是Azure功能的一个很好的用例。
函数应该是:
但实际上,函数很适合进行负载测试,但设置应该不同:
所以,功能是"乘以"根据协调器定义的计划加载。您依靠消耗计划可伸缩性来确保在任何给定时间都配置了足够的执行。
最大的区别是功能执行不会互相通话,因此他们不需要IP。
我认为上面提到的示例基于AWS Lambda is just calling Lambdas,它没有设置master-client lambdas相互交谈。
我想我的观点是你可能根本不需要那个Locust框架,而是利用自动标量FaaS的内置功能。</ p>