在Azure上部署时,服务速度极慢

时间:2013-08-06 04:24:30

标签: performance azure sql-server-2008-r2 asp.net-web-api

我有一个相当奇怪的场景。我们在云上托管了一系列WEBAPI。我们在Windows 8应用程序中使用这些服务。问题是当服务在本地运行时,它需要不到400毫秒,但是当在Windows上托管时,一些请求需要20秒。我检查了数据库表的索引及其罚款。我不知道如何分析什么以及如何提高性能。 谢谢!

2 个答案:

答案 0 :(得分:4)

每个人都非常感谢! 但是我发现了一种在azure部署中使用dottrace(优秀的分析工具)的方法。这是链接

http://blog.maartenballiauw.be/post/2013/03/13/Remote-profiling-Windows-Azure-Cloud-Services-with-dotTrace.aspx

您还可以使用Windows azure诊断程序和秒表类将所有时间记录到wad表中。 还发现在另一个线程中对azure服务的第一个请求总是很慢。刚刚将其复制到下面

  
    

Serkan,您需要首先确保在您的帖子中天气已发布到Windows Azure的Cloud Service或网站。基于云服务(Web角色)或WebSite,您的问题的答案将有所不同。如果你想了解更多,我会解释背后发生的事情。

         

正如您所说,您的第一个连接速度很慢,我可以看到Windows Azure网站会发生这种情况。 Windows Azure网站在共享资源池中运行,并使用热(活动)和冷(非活动)站点的概念,如果网站在x时间内没有活动连接,则站点进入冷状态意味着主机IIS进程退出。当与该网站建立新连接时,需要几秒钟才能使网站准备就绪并正常工作。根据您的第一页代码的方式,第一次加载网站的时间会有所不同。记录了类似的讨论:使用MySQL Connector for .net

打开MySQL连接非常慢          

使用Windows Azure Cloud Service,整体应用程序模型不同。您的webrole有自己的IIS服务器,完全专用于您的应用程序及以上网站限制不会发生,但可能有其他原因,可能会有较慢的页面加载。如果您使用的是WebRole,那么您可以做的是首先运行页面加载分析器,然后运行RD到Azure实例以收集页面加载数据,以查看您可以采取哪些措施来提高性能。

  

答案 1 :(得分:0)

您显然需要分析您的应用以找到真正的原因。看看这两篇应该开始的文章: