Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Memory management 如何减少windows azure共享网站上的内存使用?_Memory Management_Azure_Quota - Fatal编程技术网

Memory management 如何减少windows azure共享网站上的内存使用?

Memory management 如何减少windows azure共享网站上的内存使用?,memory-management,azure,quota,Memory Management,Azure,Quota,我有一个网站托管在Windows Azure共享网站上。它刚刚因为超过512MB/小时的内存使用限制而被暂停 我确实大量使用.net缓存(以防止多次调用数据库/外部API等) 在Windows Azure上的共享网站中缓存是否是不允许的?是否使用System.Runtime.Cache?您应该能够限制缓存量,例如memorycache对象使用的缓存量。有关更多信息,请参阅。可能值得在本地计算机上使用perfmon检查配置文件,以查看其是否正常达到限制,然后查看是否在Azure上配置日志记录,并再

我有一个网站托管在Windows Azure共享网站上。它刚刚因为超过512MB/小时的内存使用限制而被暂停

我确实大量使用.net缓存(以防止多次调用数据库/外部API等)


在Windows Azure上的共享网站中缓存是否是不允许的?

是否使用System.Runtime.Cache?您应该能够限制缓存量,例如memorycache对象使用的缓存量。有关更多信息,请参阅。

可能值得在本地计算机上使用perfmon检查配置文件,以查看其是否正常达到限制,然后查看是否在Azure上配置日志记录,并再次进行挖掘


此外,确保所有内容都是预编译的,并且不加载和不需要的模块等可以真正影响Azure上的性能等。

即使您将停止使用缓存,框架/libs仍然可以使用它。我也有同样的问题(有趣的是,在空闲模式下内存限制是1024MB,但共享内存限制降低到512)

正如我所看到的,Azure在门户上显示的内存量似乎非常接近System.Diagnostics.Process.GetCurrentProcess().PrivateMemorySize值

此时,我正在尝试使用缓存设置来设置最大内存:

<system.web>
  <caching>
    <cache privateBytesLimit="250000000" privateBytesPollTime="00:00:15"/>
  </caching>
</system.web>

几天前我设置了300MB,但几分钟前又被暂停:(,所以降低到250MB

但无论如何,这是一个非常不清楚、奇怪和“错误”的解决方案

更新

今天早上再次被挂起。使用小实例(1.7 GB RAM)临时转换为标准模式

我的工作集计数器现在大约是200兆(PeakWorkingSet 330兆)。但是!GC的收集计数增加了大约8倍(Gen0是1800倍,而不是250倍,少于一天)

我目前的理论是,在“共享”模式下,网站运行在“大”虚拟机中,内存很多,垃圾收集器不需要经常运行,导致“垃圾寿命”更长,内存消耗更多


目前无法访问我的开发人员计算机进行验证,但计划尽快将网站转换为云服务中的web角色-具有额外的小实例(成本与共享网站成本相当)…

我认为您可能想尝试的是扩展我们的,而不是向上扩展。如果您添加第二个实例,将使您的资源限制翻倍。

您是指主机上的实际内存吗?例如,您在一个小时内使用了超过512mb的RAM,并因此而被挂起?如果是这样,为什么不直接获得一个真正的web主机。我遗漏了什么吗?我是att清空以使用windows azure,认为该网站是全新的,还没有异常繁忙…因此价格合理,可以在需要时进行扩展。没想到会这么快达到内存限制。这很常见吗?这基本上是让用户升级到保留VM的诱饵和切换吗?