azure - 针对 azure 连接被拒绝或服务不可用的大规模测试

标签 azure azure-storage azure-table-storage

我们有一个云服务,可以获取用户的请求,将数据(两个参数)传递到表实体并将它们放入云表中(使用 BatchTableOperationsInsertOrReplace 行) 。方法就是这么简单,尽量保持轻便和快速(分区键和分区键/行键对问题得到控制)。

我们需要云服务来处理大约 10k 到 15k 个“并发”请求。我们首先使用队列来获取用户数据,并使用辅助角色来处理队列消息并将其放入 SQL 中。虽然没有出现错误,也没有数据丢失,但处理速度对于我们的需求来说太慢了。现在我们正在尝试云表,看看是否可以更快地处理数据。请求量较小时,处理速度很快,但当请求量增加时,就会出现错误并丢失数据。

我在云服务所在的同一虚拟网络中设置了一些虚拟机进行测试,以防止防火墙阻止请求。使用 1000 个线程和 5 个循环的 jMeter 测试得到 0% 的错误。 2 个虚拟机的相同测试也可以。添加第三台计算机会导致第一个错误(0.14% 的请求出现服务不可用 503 错误)。来自 10 台机器、1000 个线程和 2 个循环的大规模测试会出现大量 503 和/或连接拒绝错误。我们尝试将云服务扩展到 10 个实例,但这对结果影响不大。

我对这个问题有点困惑,不知道我是否使用正确的工具来解决问题。任何建议都将受到欢迎。

最佳答案

该问题可能与存储级别的限制有关。请查看 Windows Azure 存储团队指定的可扩展性目标:http://blogs.msdn.com/b/windowsazurestorage/archive/2012/11/04/windows-azure-s-flat-network-storage-and-2012-scalability-targets.aspx 。您可能想要尝试进行负载测试,同时考虑这些可扩展性目标。

关于azure - 针对 azure 连接被拒绝或服务不可用的大规模测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14812417/

相关文章:

azure - 哪些 Azure 产品可供公共(public)用户上传私有(private)数据?

c# - async wait 使我的任务变慢,而 task.Start() 运行速度很快

nosql - Graph DB 与社交网络应用程序的 Azure 表存储

Azure 表服务共享访问签名不可用

shell - 如何使用 ARM 模板在 Azure 上的现有 HDI 集群中安装脚本

Azure WebApp 容器和 AppSettings/环境变量

Azure逻辑应用程序计算CSV文件中列的总和

azure - 使用 Azure 存储模拟器进行 Dapr 本地开发

c# - 使用 C# 示例使用 Coldfusion 通过 REST 访问 Azure Blob 存储

python-3.x - 使用 python SDK 的 Azure 共享图像库 "GalleriesOperations"