Articles of 内存使用情况

服务器实际需要多less内存?

我在世界各地部署了不less服务器。 他们正在运行带有6 GB RAM的SQL Server 2005 x64的Windows 2003 x64。 这些盒子没有最好的(甚至是可以接受的)configuration,因为多年前订购的那个人并不知道自己在做什么。 这些盒子一直运行内存不足,最终使用分页文件,一切都变慢了。 通常情况下,提交费用是5.8GB,然后当有人需要做一些密集的工作时(例如运行一个报告),这个数字就会越过顶点。 我一直在试图获得更多记忆的力量,但是我却遭到了巨大的反对(例如,使软件性能更高,所有这些服务器花费太多,或者certificate盒子没有足够的内存等等。 ..)。 是否有一个指导方针(或一个公式)可以给非技术人员提供一个盒子需要多less内存,这样我们才能最终订购更多的内存?

Apache内存使用优化

Apache使用了太多的服务器内存,导致它崩溃。 我有4GB的RAM在服务器中。 我试图微调Apache设置,以提高它的性能,但我很新。 我试图按照这篇文章的build议,但我不知道如何计算的东西,似乎我让事情变得更糟。 我的顶部是这样的: 11697 apache 15 0 322m 37m 4048 S 0.0 0.9 0:00.52 httpd 13602 apache 15 0 323m 37m 3944 S 0.0 0.9 0:00.50 httpd 11786 apache 15 0 322m 36m 4052 S 0.0 0.9 0:00.50 httpd 12525 apache 15 0 322m 36m 4040 S 0.0 0.9 0:00.63 httpd 11806 apache […]

您多久重新启动一个频繁使用的Windows Server 2008 R2远程桌面服务器(VM)?

注意:我读过Windows服务器需要重新启动多久? 但是这个问题与我们的远程桌面服务器有关。 我们有一个Windows Server 2008R2服务器 – 一个VMware ESX VM – 获得了远程桌面服务的许可,有25个用户也使用RRAS(SSTP)。 在平均工作日,在工作时间,有8到12个login的活动用户,另外有4-6个“断开连接”的用户。 它有一个12 GHz的CPU硬保留和16 GB的RAM,也完全保留。 需要时,CPU预留最大可扩展到24 GHz。 我们的许多用户完全依靠服务器来工作。 他们也对自己的performance苦恼不已,但很多人不愿改变工作习惯或软件来改善其performance。 特别: 用户拒绝注销而不是断开连接 用户坚持使用Lync 2013而不是Lync 2010(Lync 2013是臭名昭着的资源pipe理器) 我不能夸大他们拒绝注销的重要性。 不情愿的用户在断开连接时继续使用RAM ,这意味着在任何时候,我们有多达16个运行特定程序的实例 。 我也注意到,通过经验,泄漏/僵尸往往会增加远程桌面服务器运行的时间。 重新启动后,即使在许多用户login后比较性能,服务器仍然新鲜且速度更快。我还了解到,定期重新启动可能会有所帮助。 所以我build议定期重启虚拟机 – 我想每周都这样做,周六晚上说 – 因为我觉得这些重启会解决很多问题。 我想知道,如果你是Windowspipe理员, 即使在用户断开/重新连接之后,垃圾箱/僵尸/泄漏是否会随着会话时间累积,我是否正确? 多长时间一次使用远程桌面服务重新启动类似使用的Windows Server?

有没有可能列出caching的文件?

这里是free -m的输出: total used free shared buffers cached Mem: 7188 6894 294 0 249 5945 -/+ buffers/cache: 698 6489 Swap: 0 0 0 我可以看到7GB内存中有将近6GB (5945MB)的内存用于caching文件。 我知道如何冲洗caching。 我的问题是: 是否有可能看到哪些文件(或inode)被caching?

如何随着时间的推移监视和logging进程的内存/ CPU使用情况?

我正在寻找一种诊断问题的方法,比如交换死亡,在这个过程中,一个内存溢出的进程填满swap并杀死整个机器(比如apache)。 我已经在使用仙人掌,而且我可以设置nagios(虽然宁可不)或者munin,但是据我所知,他们不能logging单个程序的使用情况 – 只是总体状态。 我知道我可以每隔30秒将一个脚本滚动到某个文件,但是我想看看现有的成熟解决scheme是否已经存在。 再一次,理想情况是: 每N秒logging进程的内存使用情况 每N秒logging进程的CPU使用情况 支持图表和历史 支持平均值 – 比如mysqld在最后一天使用了43%的CPU,平均值为400MB的内存 自由和开源 进程名不是,也不应该事先知道 – 这个想法是让它监视,然后看看顶尖的罪犯。 我的系统是Linux(OpenSUSE)。

configurationvm.overcommit_memory的效果

在CentOS 5.4(Linux kernel 2.6.16.33-xenU)上运行的我的VPSnetworking服务器不规则地(像一个月一次,需要几个星期)变得没有反应,因为OOM杀手踢了进来。监视服务器显示它不通常耗尽内存,只是每隔一段时间。 我已经阅读了一些指向这个页面的博客,它讨论了使用以下sysctl设置来configuration内核以更好地pipe理overcommit: vm.overcommit_memory = 2 vm.overcommit_ratio = 80 我对此的理解(这可能是错误的,但我找不到一个规范的定义来澄清)是,这可以防止内核过度分配内存超过swap + 80%的内存。 不过,我也读过一些其他的消息来源,认为这些设置不是一个好主意 – 虽然这种方法的批评者似乎在说“不要做破坏你的系统的事情,而不是尝试这个混乱”因果总是众所周知的。 所以我的问题是, 这种方法的优点和缺点是什么 ,在一个Apache2的网站服务器托pipe约10个低stream量的网站上下文? 在我的具体情况下,Web服务器具有512Mb的RAM,1024Mb的交换空间。 这在绝大多数时候似乎是足够的。

为什么Linux会奇怪地报告“空闲”内存?

这是Unix操作系统如何报告内存使用情况的一个典型问题 。 类似问题: 服务器拒绝使用交换分区 内存使用在LINUX中 我有运行Debian 6.0.6 Squeeze的生产服务器 #uname -a Linux debsrv 2.6.32-5-xen-amd64 #1 SMP Sun Sep 23 13:49:30 UTC 2012 x86_64 GNU/Linux 每天cron以root身份执行备份脚本: #crontab -e 0 5 * * * /root/sites_backup.sh > /dev/null 2>&1 #nano /root/sites_backup.sh #!/bin/bash str=`date +%Y-%m-%d-%H-%M-%S` tar pzcf /home/backups/sites/mysite-$str.tar.gz /var/sites/mysite/public_html/www mysqldump -u mysite -pmypass mysite | gzip -9 > /home/backups/sites/mysite-$str.sql.gz cd […]