我有一个相当奇怪的场景。我们在云上托管了一系列WEBAPI。我们在Windows 8应用程序中使用这些服务。问题是当服务在本地运行时,它需要不到400毫秒,但是当在Windows上托管时,一些请求需要20秒。我检查了数据库表的索引及其罚款。我不知道如何分析什么以及如何提高性能。 谢谢!
答案 0 :(得分:4)
每个人都非常感谢! 但是我发现了一种在azure部署中使用dottrace(优秀的分析工具)的方法。这是链接
您还可以使用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)