具有共存缓存的Azure Web角色响应缓慢

时间:2013-10-11 13:56:54

标签: performance caching azure

我有一个共同定位缓存的Web角色。这个角色有两个例子。

即使存在缓存命中,我们请求的周转时间也会达到几秒钟。经过分析,我们发现缓存恢复数据所用的时间平均为1秒。但是,IIS日志表明请求的整体服务大约需要4秒。在从缓存中检索数据之前或之后没有中间操作。

这里有什么问题?什么是分析问题的好方法?

2 个答案:

答案 0 :(得分:1)

我们在Azure中的Redis和RESTful API中遇到类似的缓存问题。

问题原来是数据的序列化。

调试问题的一些方法:

  1. 下载ANTS个人资料(免费试用)并在本地描述您的工作人员角色。
  2. 为您的辅助角色启用分析,部署它,稍稍运行它,然后在Visual Studio中下载配置文件。 (您可以使用服务器资源管理器查找您的实例并下载日志。)
  3. 在您的实例上下载Azure工具包(http://blogs.msdn.com/b/kwill/archive/2013/08/26/azuretools-the-diagnostic-utility-used-by-the-windows-azure-developer-support-team.aspx)。它有像Process Explorer这样的东西可以告诉你你的角色占用了多少内存,多少CPU,它在网络上做了什么等等。
  4. 您可以联系Azure支持并让他们帮助您分析您的应用程序。我们做到了,得到了绝对惊人的支持。他们通过电话与我们聊了几个小时,并帮助我们描述了我们的代码。

答案 1 :(得分:0)

您确实应该提高客户端和服务器的日志级别,请参考In-Role Cache Troubleshooting and Diagnostics (Windows Azure Cache)并查看性能计数器。如果读取操作(GET)花费很长时间,则可能在其中一个实例中进行分页,或者可能是服务器上存在过载。如果您在缓存实例上发现任何性能问题,则应使用Capacity Planning Considerations for In-Role Cache (Windows Azure Cache)重新评估容量。

如果这没有帮助,请打开支持票。

相关问题