【发布时间】:2013-06-04 19:11:30
【问题描述】:
我正在对我的 GAE/J 应用程序运行两个不同的负载测试。
Loadtest #1 (LT1):每 2 秒调用 /rest/cheap1,每 60 秒调用 /rest/cheap2
Loadtest #2 (LT2):除了 LT1 的 URL,每个用户还调用四个不同的 URL /rest/expensive{1,2,3,4}。这些 URL 中的每一个大约每 60 秒调用一次。
两个负载测试都去
- 在 30 分钟内从 0 到 10.000 个并发用户,
- 在 10.000 个用户中停留 30 分钟,
- 然后在 30 分钟内降至 0 个用户。
网址的主要区别在于延迟。平均而言,延迟为
- /rest/cheap{1,2} 为 70 毫秒
- /rest/expensive{1,2,3,4} 600 毫秒
在运行 LT1 时,GAE 仅启动少数实例,每个实例最多可发出 。在 LT2 中添加 /rest/expensive{1,2,3,4} 后,GAE 启动的实例显着增加,并且每个实例仅放置 5-7 个请求/秒,导致成本增加。 p>
如何使用更少的实例? 有没有办法利用最频繁操作 /rest/cheap1 的小延迟?有很多settings for the GAE scheduler,例如最小/最大挂起延迟、最小/最大空闲实例、实例类。 在这种情况下,我如何利用它们来发挥自己的优势?
/rest/expensive{1,2,3,4} 的延迟更改如何影响实例计数?如果响应时间减半,GAE 会启动一半的实例?
设置 min.等待延迟到 >= 600 毫秒?
更新:
- 是的,我在我的应用程序中将 threadsafe 设置为 true。
【问题讨论】:
标签: java python google-app-engine load-testing