我们有Microsoft SQL Server 2017 (RTM-GDR) (KB4583456) - 14.0.2037.2 (X64) Nov 2 2020 19:19:59 Copyright (C) 2017 Microsoft Corporation Standard Edition (64-bit) on Windows Server 2016 Standard 10.0 <X64> (Build 14393: )
服务器实际安装了256 GB的RAM。Server的内存限制设置为210 GB。我注意到,服务器在进行查询时每个查询请求39 GB内存(210 * 0.7
我们有一个具有混合OLAP/OLTP工作负载的数据库。查询非常特别,是在中间层应用程序服务器中动态创建的。当我们启动服务器时,性能是可以接受的,但是内存消耗越来越多,直到所有可用内存(30 we )耗尽为止。在那之后,系统变得越来越慢。
像Dbcc freeproccache这样的命令没有效果。
select * from sys.dm_tran_session_transactions中的事务不多(不超过系统正常时),有时此列表为空。
dbcc memorystatus的第一个结果是
VM Reserved 42136628
VM Committed
我被要求在客户端设备上对承载我们应用程序的服务器进行故障排除。
在过去一周半的时间里,客户曾两次向我们投诉。在一种情况下,他们声称服务器的内存被“耗尽”,而在另一种情况下,他们声称CPU被“耗尽”。在这两种情况下,我们的应用程序变得不可用,客户机被迫重新启动服务器。
服务器规范如下:
System Manufacturer Dell Inc.
System Model PowerEdge R320
System Type x64-based PC
Processor Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz, 2200 Mhz, 6 Core