帮助解决VPS上的内存使用问题

我正在运行一台运行6个.net网站/应用程序的VPS服务器。 我在服务器上的性能问题,主要是内存不足。 我联系了租给我的服务器的公司,他们告诉我这是因为我也有服务器上运行的SQL Server 2008 Express。 所以我继续前进,删除这个,卸载等,但我似乎仍然有问题。

比如目前看资源消耗的虚拟内存是:

  • ID:vprvmem
  • 当前使用:894,328,832字节
  • 限制:1,073,741,824字节

这意味着〜80%的使用量。

有什么办法可以检查应用程序,网站,软件占用了大部分服务器的内存,所以我可以考虑纠正它。 我觉得80%是高到让交通高峰的偶然。 最近我已经增加了额外的内存资源,但是我希望find问题的根源,而不是在内存中增加内存。

也许这些水平是正确的,所有运行良好,但想调查它确保。 我的硬件知识是有限的,因为我主要处理软件的范围。

所以,任何可以帮助我的工具或任何有意义的build议。

你应该可以打开一些性能计数器来看看发生了什么。

我会从内存,caching和可能的一些.net计数器开始。 但是正如@Josh提到的,即使服务器没有运行SQL Server,1 GB对于服务器来说也相当低。

要查看正在运行的程序正在使用哪些资源,请安装procman以查看内存正在运行的位置。

微软服务器(特别是SQL Server)倾向于自动分配尽可能多的可用内存以获得更好的caching/性能,这往往使人们认为他们的系统内存不足。 在这种情况下,这是正常的行为。

请记住,Microsoft服务器需要至less1GB的RAM来运行一个非常小的应用程序/站点集(而基于Linux的机器可以使用基本的Apache服务器只需128MB)。 您添加的应用程序/服务越多,所需的RAM就越多。 可能有其他服务,您可以禁用,以提供更多可用RAM。

根据你的描述,更有可能是你的服务器所在的硬件环境造成了缓慢。 VPS服务器运行在共享硬件环境中,这意味着您的虚拟实例与其他许多虚拟实例共享相同的物理CPU或CPU。