如何使用Linux服务器内存交换提升性能
常见三大服务器负载问题有内存空间不足而无法加载应用,缓存文件时内存空间不足和过于频繁地使用内存交换。解决这三类问题可以基于Linux内存使用率最佳实践优化服务器,如将不活跃内存移到交换区。当然,在解决难题之前,每个独立的负载问题要求Linux内存分析。下面就让我们分别看看这三大问题该如何解决。 内存空间不足而无法加载应用 让一台没有足够内存的服务器去加载应用,这会出现内存短缺的情况。服务器会在缓冲区显示相对有限的内存数量,相应地,交换空间也使用得多。最简单的方法就是添加更多内存。不过优化Linux内存交换也能提升性能。确保不活跃内存页尽早交换出去,为所需的内存页腾出空间。 缓存文件时内存空间不足 如果你感觉缓存文件可能会出现内存不足的话,按照下面方法计算:如果可用缓存与缓存内存低于总RAM的30%,那么服务器可能遭遇内存不足。接下来检查/proc/meminfo的内容。如果不活跃(文件)内存总量明显高于缓存总量,那么服务器没有足够可用内存去缓存文件。在释放更多缓存时,首先查明是何种原因导致短缺。 如果Linux载入的程序要求太多内存的话,除了添加更多物理RAM内存别无他法。然而,使用内存的系统其它部分也可能导致缓存短缺。例如,将修改后的文件提交到磁盘可能需要很长时间。如果是这样,你会在投个程序中看到一个相对高的wa(等待I/O)参数,在/proc/meminfo会看见Dirty参数有个相对较高的值。如果是这样,修改磁盘性能是关键,能获得更好的内存性能。 内存交换用得太频繁 如果交换用得太多,vmstat监控工具会显示高si与so(换进与换出)动作。交换空间几乎填满,服务器可能的免费内存很低。 为了优化Linux内存,首先调查交换频繁的根源。通常,如果只有不活跃内存在交换区,那就不该有压力。在/proc/meminfo中,看交换量是否用得比不活跃内存的量还多。如果是,活跃内存页交换得很好,就算Linux内核需要经常访问活跃内存页。系统需要更多物理内存。 如果交换处于压力下,并分配了大量缓存,通过增加swappiness参数,可在服务器上减轻内存负载。更高的swappiness值让内核更快将内存页放到磁盘,减轻来自缓存的压力,让活跃内存得到更多可用内存。 更高的swappiness参数实际上降低了磁盘震荡,震荡通常由页频繁地换入换出而引起。增加的swappiness只是确保页移到应该待的交换区,使得服务器上的交换动作缓慢下来。
从需求性、稳定性、操作性、安全性、性价比来分析一番,然后您就知道该选哪款空间了。
需求性:
这个要看您网站选取的语言,如果是asp建设的网站,毫不犹豫应该选择Windows主机,Linux不支持asp系列的语言;如果是PHP语言建设的网站,建议选择Liunx主机,因为在liunx平台中,Linux+Apche+Mysql构架运行PHP网页可以更高效,更稳定。Linux空间还支持zend加速等,让你的网站跑的更顺畅!
稳定性:
主机的稳定性是至关重要的,关系着网站的生存发展,如果稳定性不够好的话,就会影响用户的访问,也会影响网站的优化,导致没有排名,这对于用户体验度的影响是非常大的。通常来说,Linux稳定性要比Windows好些,因为Linux开源,一般很少有漏洞,就很少会招到网络攻击。再就是Windows的图形界面需要占很多资源,而Linux系统去掉图形界面的包袱,系统运行得更快。
Windows配置变化的时候,通常需要重新启动,这导致不可避免的停机,而Linux通常不需要重新启动。几乎所有的Linux系统配置的改变都能在系统运行中操作,而且还不会影响其他无关的服务。
所以,Liunx要更稳定。
操作性:
Windows系统的普及和它的图形化界面让我们每个懂电脑的人都不会陌生了,而Linux服务器一般是纯命令行模式,每完成一个操作,比如新建一个文件夹,都要用一串命令来完成。所以从操作性来讲,Liunx操作性要困难些。
安全性:
从安全漏洞的数量上来说,Linux的开源开发方式有助于发现错误,集众人智慧解决问题,各种补丁更新得很快,这是Windows主机不具备的优势。Linux系统也有自己的缺点,就是厂商开发的硬件和相关驱动一般针对的是Windows系统,使得Linux的硬件兼容相对延后。Linux主要用作支持网络功能的操作系统,默认安装时启动了很多不必要的网络应用程序,这就可能造成安全漏洞。
还有Linux里面的权限分配的很细致、严格,各个用户之间也相互独立,所以安全性较好。
性价比:
从这点来讲,我想Linux的优势是显而易见的,因为Linux作为资源管理和操作系统来说,是开源、免费的。而Windows服务器系统是要收费的,相应,Windows里面的某些软件也是收费的。因此,Windows主机的成本就要比Linux高很多,自然Windows空间要贵一些。
那么现在很明显,Linux空间是比较有优势的,只不过它只能跑纯静态html或php建设的网站。所以如果网站只用到了php语言,那么选Linux空间是很不错的,无论从安全还是性能,都比windows有优势。反正,如果是asp或net系列的网站,就选windows主机吧。
0条评论