我有一个返回联系人列表的简单 Web API:
public class ContactsApi : ApiController
{
public List<Contact> GetContacts()
{
Stopwatch watch = new Stopwatch();
watch.Start();
// Doing some business to get contacts;
watch.Stop();
// The operation only takes less than 500 milliseconds
// returning list of contacts
}
}
正如我曾经Stopwatch
测试数据检索性能一样,很明显它只需要不到一秒钟的时间。但是,当我通过 Chrome 浏览器向操作发出请求时GetContacts
,需要 4 到 5 秒才能返回数据。
显然,延迟与我的数据检索代码无关。在我看来,Web API 运行缓慢。但我不知道如何调试和跟踪它。
是否有任何实用程序来记录 ASP.NET HTTP 请求处理管道的时间?我的意思是,像Navigation Timing这样的东西来显示每个事件发生在什么时间?