在具有8GB内存的四核服务器上,我有apache进程使用高达2.3GB的RES内存和2.6GB的VIRT内存。 以下是top -c command的副本: 有没有办法来减less这些Apache进程的内存使用量? 这些是我的httpd.conf设置: Timeout 160 TraceEnable Off ServerSignature Off ServerTokens ProductOnly FileETag None StartServers 6 <IfModule prefork.c> MinSpareServers 4 MaxSpareServers 16 </IfModule> ServerLimit 400 MaxClients 320 MaxRequestsPerChild 10000 KeepAlive On KeepAliveTimeout 4 MaxKeepAliveRequests 80 注意 :似乎有一些连接延迟。 另外,如果16个连接使用8GB或RAM。 我有点担心,如果我的服务器获得300个连接,它将脱机。 同样在Munin,我可以看到承诺的内存在两周内从几GB增加到80GB。 随着每一个Apache重新启动下降到几GB
我一直在努力改善我们的Centos 5.5 VDS的内存使用情况,现在有了512MB的内存。 我已经能够使用tuneup脚本来极大地改进MySQLconfiguration,但是让Apache的内存使用率降低会有点麻烦。 我的一部分问题是在各种网站,论坛等方面的build议相互冲突。作为生产服务器,我将在testing机器上使用正常的修改和testing周期会有点太破坏性。 为了增加我的困惑,我将开发机configuration得尽可能接近VDS的克隆,并且使用更less的RAM和完全相同的Apacheconfiguration。 虽然在白天或晚上的安静时间比较两者显然很难适用相同的负载。 Apache是否有一个tuneup脚本,就像那些可用于MySQL的脚本一样,可以通过分析服务器运行时发生的事情来帮助优化configuration。 编辑: 要么我一直不清楚,或者人们没有阅读这个问题,所以我会澄清。 我不是在这里要求任何人提出build议或build议替代scheme。 我在问是否有人知道脚本可以分析服务器上正在发生的事情,并根据这些信息提供关于Apacheconfiguration的build议。
我有一个Windows 7 64位安装在运行SQL Server 2008 R2和IIS7的虚拟机。 服务器本身有12个内存,并配备双核心intel Xeon @ 2.50 GHz。 这个问题(我不太确定它是否有问题)是任务pipe理器总是显示8.50 GB正在使用中,而没有进程占用这个内存量。 我看看这个问题,这是在谈论的SQLlocking页面分配内存。 我发现,虽然这些值是正常的 – 约85 MB。 这是该命令的屏幕截图 select * from sys.dms_os_process_memorys 不过基于上面的图片,我也看到了大约8.50 GB的total_virtual_space_kb 。 最后,我运行了RAMMap,它显示我有大约8.50 Gb被“locking的驱动程序”使用 。 在其他地方,有人build议VMWare使用这个“驱动程序locking”内存。 我有几个问题: 1)这个内存是否真的被消耗掉了,还是会根据需要被释放到另一个进程? 我注意到,服务器明显慢,所以我想知道这是否有什么关系。 而且,我的asp.net进程通常会OutOfMemoryExceptionsexception。 2)谁在分配/使用这个内存? SQL或VMWare? 3)我有办法解决这个问题吗? 任何帮助表示赞赏。
我正在uwsgi上运行几个django站点,我试图优化我的内存使用configuration,但是-idle和–die-on-idle标志似乎没有做任何事情。 每个守护进程在10-12MB左右开始,一旦服务请求就会增加到30MB左右,但是在闲置一段时间后仍会保留在那里。 我的启动命令是: uwsgi –cheap –idle 60 –die-on-idle –http :8083 –wsgi-file /var/django/mysite/apache/django.wsgi 有什么我在这里失踪? 从文档,我希望“–idle”标志使其在闲置60秒后回落到其初始的内存使用情况; 而且我希望这个“闲置”标志完全杀死了工人的进程。 这些都不会发生,虽然“–cheap”标志似乎工作。 (注意:我知道http不是最好的协议,但是我想在重新编译nginx之前将内存问题sorting)
当我在Hyper-V中创build虚拟机并将其设置为使用dynamic内存时,虚拟机将始终使用虚拟化操作系统内的最大内存。 Hyper-V将以514mb显示分配的内存,但是当我login到服务器并拔出任务pipe理器时,将显示90%的内存使用情况。 当我的最大内存达到4GB时,我得到了相同的结果:90%的内存使用率。 除了Windows Server 2008 R2的全新安装外,虚拟机上甚至都没有运行。 我也尝试过与Windows 7相同的结果。 这是预期的行为还是设置错误
我可以用Linux命令获得所有进程的美好内存映射 pmap $(ps -A | awk '{print $1}'|grep -v PID) | sort | grep \^0 看起来像 … 00007fd6dbf45000 4K rw— /lib/libnss_compat-2.11.1.so 00007fd6dbf46000 1524K rx– /lib/libc-2.11.1.so 00007fd6dc0c3000 2044K —– /lib/libc-2.11.1.so … 所有进程的内存映射在这里合并。 但是我错过了内核有内存页面的信息。 是否有一个类似的工具“完整的内存映射”?
我有大小〜16GB的Windows Server 2008 R2(最新)的数据库。 我们从Postgres v9.2.4移到了Postgres v9.3.4,现在Postgres v9.3.4的内存使用量正在增长,直到占用所有的windows物理内存。 在Windows启动时,物理内存使用率约为13%。 在48H这个内存使用量将增加到70%,大部分的内存被postgres使用。 但在Postgres v9.2.4上一切正常,内存使用情况合理。 但是我无法理解Postgres v9.3.4有什么问题。 为了保持我的应用程序运行,我必须每48小时重新启动一次服务器。 有没有人有同样的问题,并find解决办法? 这将是高度赞赏有人可以帮助我这一点。
从昨天开始,我在Debian机器上运行的Apache服务器运行非常不稳定。 Sometiems我的网站加载,有时不。 我认为这与内存有关,因为我的Apache日志内存已满(已分配262144)(尝试分配4480字节)。 我还附上了内存图的截图。 服务器重新启动可以暂时解决问题。 我查看了正在使用内存的进程,但最大的是6.5%的MySQL。 还有什么地方可以find问题? 编辑:我重新启动后,一个约2小时后,一个免费的-m。 我认为这个趋势是可见的: root@xxx:~# free -m total used free shared buffers cached Mem: 4016 731 3284 0 80 200 -/+ buffers/cache: 449 3566 Swap: 459 0 459 root@xxx:~# free -m total used free shared buffers cached Mem: 4016 2466 1550 0 92 473 -/+ buffers/cache: 1900 2115 Swap: 459 […]
我看到了其他用户的类似问题,但找不到与可执行文件相关的问题。 情况:10-15个用户login并运行应用程序的terminal服务器。 对于这个例子,我们希望在几个小时内监视多个用户使用32位IE和64位IE的内存,然后将其转储到文件中,这样就可以创build一个graphics,并且可以对其进行比较。 我玩RAMMap,任务列表,procmon,perfmon,并不能完全达到我所期待的。 你如何做到这一点? 谢谢
我需要监视Linux上每个进程进程的内存使用情况。 我的监控工具是Zabbix。 我发现了一些链接,描述了我们如何在Windows上做到这一点。 作为一个例子,我可以参考主机进程monitoring-graphs LLD但是我怎样才能有一个图表,其中显示了一个Linux系统进程的内存使用情况? 如果有用,我的Linux发行版是Debian。 提前致谢。