Articles of 虚拟内存

Linux最大。 值为vm.max_map_count

我打算明显增加65k max映射的默认值; 假设我们有足够的内存在机器上有什么我应该照顾这样做? 例如,任何性能问题? 谢谢。

如何在Linux上调整mongoDB的系统设置?

试图在这里挤出很多的问题 – 请耐心等待。 尽pipeMongoDB手册页提供了一些关于系统设置的有用build议,如ulimit( http://docs.mongodb.org/manual/reference/ulimit/ )和其他生产因素( http://docs.mongodb.org/manual/pipe理/生产笔记/ ),他们似乎神秘沉默的东西,如虚拟内存和交换设置。 最接近的提示是“…操作系统的虚拟内存子系统pipe理MongoDB的内存…”( http://docs.mongodb.org/manual/faq/fundamentals/#does-mongodb-require-很多公羊 )。 运行同样的工作 – 在单个集合中的大约10,000,000个logging中的高写入和高读取 – 在我的4处理器,4GB RAM macbook和具有64GB RAM的8核ubuntu机箱上,我看到了在Linux盒子上显着的WORSE读取性能出厂设置,并可以听到磁盘不断旋转,表明高I / O和大概交换。 是的,盒子上还有其他的东西,但是有足够的可用RAM,磁盘空间等等。 此外,我没有看到有证据表明Mongo正在扩大,以利用所有可用的RAM,因为它被吹捧。 Linux机器的默认设置如下:vm.swappiness = 60 vm.dirty_background_ratio = 10 vm.dirty_ratio = 20 vm.dirty_expire_centisecs = 3000 vm.dirty_writeback_centisecs = 500 我对一些其他types的数据库(Oracle,MYSQL等)的文档和博客进行了一些猜测,并进行了实验,并进行了如下调整。 vm.swappiness = 10 vm.dirty_background_ratio = 5 vm.dirty_ratio = 5 vm.dirty_writeback_centisecs = 250 vm.dirty_expire_centisecs = 500 我看到一些读取时间有了明显的改善。 […]

如何在不禁用交换的情况下将重要的虚拟机保留在内存中?

VM Host – > Xenon E5-2440 w / 48G mem …一切运行CentOS6.5(2.6.32-431) 我有4个虚拟机运行每个瓦特/ 2G的内存。 他们的磁盘映像是本地文件。 主机也运行一个轻微使用的NFS服务器,但没有其他的东西。 (swappiness = 0)经过一天左右的缓冲区caching增长到接近40G,这些虚拟机几乎完全交换到磁盘。 (通过查看:grep VmSwap / proc / PID / status) 我遇到的问题是,这些虚拟机可能不经常使用,他们必须准备好。 然而,实际上他们正在被换出,造成严重的问题与他们的反应时间。 我当然是让我的访客虚拟机使用合理大小的交换文件,并让操作系统决定缓冲区caching和交换之间的平衡,但是这似乎不适用于我的用例中的主机。 除了在主机上禁用交换之外,还有哪些选项可以保持虚拟机的响应性不受影响? 尝试使用cgroups,或只是拔出交换文件的插件为这个用例?

性能会影响在Windows / NTFS上压缩程序文件

在Windows NTFS上压缩程序文件的性能影响是什么? 在一个快速的多核机器上,解压缩的开销很小。 机器通常是磁盘绑定的,如果你可以通过压缩来减less磁盘负载,你通常会加快速度。 (微软说,由于这个原因,Windows Search索引的内置压缩实际上提高了速度。) 另一方面,Windows的虚拟内存很复杂。 也许如果文件被压缩,他们不能被简单地翻出来。 可能还有其他问题。 简而言之:在一个速度相对较慢的多核机器上,压缩程序文件具有哪些性能影响?

减lessWindows 7上的虚拟内存页面文件大小

我已经升级了我的电脑到16GB内存,我注意到页面文件也在16GB。 因为我决定去SSD,硬盘空间有限,所以我想尝试和声称一些16GB回来。 我已经阅读了大量的文章强烈build议禁用页面文件完全,但是我想知道是否可以减less页面文件的大小,比如固定的大小1GB? 这样做有什么伤害吗? 让我们假设我永远不会达到16GB的内存限制。

什么是shrink_slab,为什么在/ var / log / messages中显示?

我正在研究Linux系统上的一些应用程序问题,并在最近的问题发生的时候注意到这个问题,但是还不够紧密: Jun 7 17:51:49 localhost kernel: shrink_slab: nr=-155456000 Jun 7 17:51:49 localhost kernel: shrink_slab: nr=-157859400 Jun 7 17:51:49 localhost kernel: shrink_slab: nr=-157833400 Jun 8 06:20:23 localhost kernel: shrink_slab: nr=-284172800 这是什么? 谷歌search没有帮助,我知道这是虚拟机的东西,但为什么它突然出现在/ var / log / messages? 编辑:我把它显示这是因为它可以释放的页面数(“NR”)是负面的。 这大概是一件坏事。 我发现了更新的内核的补丁,显示更有用的消息。 仍然不知道这是什么意思,或者我需要做些什么。

如果IIS中的应用程序池中的虚拟字节数很高,是不是很糟糕?

与IIS7.5pipe理器的“工作进程”窗格中的“虚拟字节”的含义相关? 我有一个服务器运行几个不同的网站。 我们看到一些性能和内存问题。 当我转到工作进程时,我看到一个虚拟字节数为5 GB的站点。 私人字节是一个更合理的800 MB。 服务器是具有8GB内存和IIS 7的x64。 是虚拟字节数如此之高还是一个红鲱鱼的问题? 如果虚拟字节数很高,这是否意味着它将内存存储在分页文件中,这可能会导致抖动? 还是应用程序池只是在Windows x64上创build大块虚拟内存,而不影响其他进程或写入分页文件?

高内存64位服务器,不使用所有内存

我有几个运行centos 64bit的高内存linux服务器,在正常运行10到20天之后,我注意到在所有这些服务器上,他们实际上并没有使用所有可用的ram(它们在48gb系统上都有大约10gb的空闲空间)在64GB系统上免费使用20GB。 他们是networking服务器,并有一个工作数据集(如活动文件)超过在服务器的RAM的数量,所以我会假设页面caching将增长到使用所有内存的点,然后从页面caching页面当/如果需要时被释放。 例如 : top – 09:44:46 up 57 days, 9:32, 5 users, load average: 6.44, 6.33, 6.27 Tasks: 680 total, 4 running, 676 sleeping, 0 stopped, 0 zombie Cpu(s): 17.3%us, 3.3%sy, 0.0%ni, 79.0%id, 0.1%wa, 0.0%hi, 0.3%si, 0.0%st Mem: 49313212k total, 39277524k used, 10035688k free, 1247064k buffers Swap: 20643832k total, 0k used, 20643832k free, […]

Ubuntu Server 14.04 LTS与KVM的虚拟化限制?

基本上我是在这样的事情之后: 使用KVM的红帽企业Linux的虚拟化限制 但Ubuntu服务器14.04 LTS。 我正在尝试创build一些带有非常大的1TB + RAM的KVM访客(通过OpenStack Nova)。 我可以启动1TB虚拟机,但是我得到了2TB风格的内核恐慌。 只是想知道我是否正在运行Ubuntu KVM实现的内核限制,比如RHEL6.3的2TB限制?

虚拟服务器内存不是2的倍数的倍数

在过去的时代(虚拟化之前),内存的功率/倍数是2,因为这是内存制造的方式。 现在我们创build的虚拟服务器没有真实的物理内存,人们仍然使用2的倍数/倍数来创build虚拟服务器。 是否有任何理由继续这样做(performance或其他)或者这是人们所做的事情,因为这是他们习惯的?