我开发了一个部署在Azure Web App上的RESTful api。在使用JMeter执行负载测试时,我发现响应时间很长,即〜18秒。这个响应时间让我感到震惊,因为我暴露的端点只接收了大约1-2KB的文本数据并将其排入天蓝色服务总线队列。
我研究过并发现了以下内容:
对于负载测试,我在与Azure Web App相同的区域中配置了VM实例,以最大限度地减少延迟。 enqueue语句需要花费几毫秒的时间,所以我想知道在serivce处于加载状态时需要额外的秒数?
编辑:我的代码创建了ApiController
的单个实例,我将其重用于所有请求。代码只是ServiceBusManager.GetQueueWriter().Enqueue(data); //data is no more than ~1KB
return Request.CreateResponse(HttpStatusCode.OK, "Data enqueued");
{{1}}
答案 0 :(得分:1)
可能有几个原因: