需要控制AOS内存消耗

时间:2015-06-23 11:45:12

标签: axapta dynamics-ax-2012

这是我的问题。我正在处理一个产生多个任务的批处理过程。每项任务基本上都是做一些期刊发布。任务并行运行。现在这本期刊是一本近10k行的计数期刊。这个过程持续数小时,因为有大约100个期刊要发布。该过程在物理开发盒,AOS和SQL在同一个盒子上运行良好。但在虚拟服务器上,它的行为是不同的。当线路被添加时AOS开始消耗所有内存,并且在一点上,内存命中率达到100%并且AOS抛出内存异常而死亡,其他时候进程只是挂起并等待内存释放,这需要很长时间。期刊发布是标准的AX流程,不是自定义的。 AX环境是2012 R1,并应用了最新的内核修补程序(KB2962510)。我探索了这个名为MaxMemLoad的属性,它允许你限制AOS可以在服务器上使用的内存,但根本没有帮助。

AX环境由一个集群中的三个AOS组成。

如何限制这种疯狂的内存消耗?

编辑: 感谢Matej,我取得了一些进展。 SQL Server版本是2008 R2 SP1,我应用了最新的SP3。有趣的是,第二组中的三个AOS现在具有更好的内存图,小于45%。但第三个仍然有奇怪的内存使用。所有三个AOS都是相同版本的AX,类似的系统配置(Windows 2008 r2,24 GB RAM,4个内核)。我还在所有AOS上应用了最新的内核修补程序。目前我在这个特定的服务器上做了一个完整的CIL并再次运行批处理,如果这有帮助的话。我正在附加三个图表,使用性能监视器生成CPU和内存,因为您可以看到Server 01上的内存非常不稳定,没有按时释放内存,另外两个更稳定。有什么想法吗?

Server 01

Server 03

Server 04

0 个答案:

没有答案