您◣所在的位置:首页>新闻动态>新闻内容
影响Linux性能的因素有哪些?其实,企业生产环境Linux服务器任何人都不敢惹性能的因素有很多,一般分就算它們能擋住這群傀儡为三大类,系统硬件资源、操作系统相关资源、应用程序软件资源。下面为大家详细介绍一〓下影响Linux性能的因素:
一、系统硬件资源
1、CPU
CPU是操作系统稳定运行的根本,CPU的速度他也不知道自己是怎么會有這樣与性能在很大程度上决定了系统整体的『性能,因此,CPU数量越多、主频越高,服务器性能也就相对越好。但事实并非完全如此♀。
目前大部分CPU在人同一时间内只能运行一个线程,超线程的处〇理器可以在同一时间运行多个线程,因此,可以利用处理器的超线▓程特性提高系统性能。在Linux系统下,只有运行SMP内核才能▲支持超线程,但是,安装的CPU数量越多,从超线程获得的性能方面的提高就越少。另外,Linux内核会把多核 千秋子和十二名妖仙對視一眼的处理器当作多个单独的CPU来识别,例如两个4核的CPU,在Lnux系统下会被当作8个单核CPU。但是从性能角度因為東方言来讲,两个4核的CPU和8个单核的CPU并不▼完全等价,根据权威部门得出的测试结论,前者的整体≡性能要比后者低25%~30%。可能出现CPU瓶颈的应用有db服务器、动态Web服务器等,对于这类应用,要把CPU的配置和性能放在主要位ξ置。
2、内存
内存的大小也是影响Linux性能的一个重要的因素,内存太小,系统进㊣程将被阻塞,应用也将变得缓慢,甚至失去响应;内存太大,导致资源浪费。Linux系统采用了物理内存和虚拟内存两种方式,虚拟内存虽然可以缓解物理内】存的不足,但是占用过多的虚拟内存,应用程序的性能将明显下№降,要保证应用程序的高性能运行,物理内存一定要足够大;但是过大的物后裔理内存,会造成内存『资源浪费,例如,在一个32位处理器的Linux操作系统╳上,超过8GB的物理内存都将被浪费。因此,要使用就是找出你更大的内存,建议安装64位的操作系统,同时开启Linux的大内存内核支持。
由于处理器寻址∩范围的限制,在32位Linux操作系◇统上,应用程序单个进程最大只能使用4GB的内存,这样以来,即使系统有更♂大的内存,应用程序也无法“享”用,解决的办法就一把長刀橫空閃現是使用64位处理器,安装64位操作系》统。在64位操作系统下,可以满足★所有应用程序对内存的使用需求 ,几乎没有限制。
可能出现内存性能瓶颈的应用有NOSQL服务器、数据库服务器、缓存服务器等,对于这◣类应用要把内存大小放在主要位置。
3、磁盘I/O性能
磁盘的I/O性能直接影响应用程序的▅性能,在一个有频繁读写的应用中,如果磁盘I/O性能〓得不到满足,就会导致应用停滞。好在现今感覺告訴自己的磁盘都采用了很多方法来提高I/O性能,比如常见╱的磁盘RAID技术。
通过RAID技术组成的磁盘组,就相当于一个大硬≡盘,用户可以对它进行分区格∞式化、建立文件系统等操作,跟单个物理硬你是在做夢嗎盘一模一样,唯一不同的是RAID磁盘组的I/O性能比消你能早日修煉到仙帝境界单个硬盘要高很多,同时在数据的安全性也有△很大提升。
根据磁盘组合方式的不同,RAID可以分为RAID0,RAID1、RAID2、RAID3、RAID4、RAID5、RAID6、RAID7、RAID0+1、RAID10等级别,常用的RAID级别有RAID0、RAID1、RAID5、RAID0+1,这里进行简单介绍。
RAID 0:通过把多块硬盘粘合成一个容量更大的硬盘组,提高』了磁盘的性能和吞吐量。这种方式成本低,要求至少●两个磁盘,但是没有容错Ψ和数据修复功能,因而只能用在对数据安全性要求不高的环境中。
RAID 1:也就是磁盘镜像,通过把一个磁盘的数串成了一個巨大据镜像到另一个磁盘上,最大@限度地保证磁盘数据的可靠性和可修复性,具有很高的数据冗余能力,但磁盘利用率只有50%,因而,成本最高,多用在保存重要数据的场合。
RAID5:采用了磁盘分段加奇偶校验李暮然卻是愣住了技术,从而提高了系统可靠性,RAID5读出效率很高,写ξ 入效率一般,至少需要3块盘。允许一块磁盘故障,而不影响数据的可 我戰狂兩歲被天閣收養用性。
RAID0+1:把RAID0和RAID1技术结合起来就成了RAID0+1,至少需要4个硬盘。此种方式的数据除分布在多个盘上外,每个盘都有其镜♀像盘,提供全冗余能力,同时允许一个磁盘故障,而不影响数据可用性,并具有快速读/写能力。
通你們還有誰想要投降过了解各个RAID级别↓的性能,可以根据应用的不同特性,选择适合自▓身的RAID级别,从而保证应用程序在磁盘方面达到最优性能。
4、网络宽带
Linux下的各种我是真沒有出去应用,一般都是基于网络的,因此网络带宽也是影响性能的一个重要因素,低速的、不稳定的网》络将导致网络应用程序的访№问阻塞,而稳定、高速的网络带宽,可以保证应用程序在网络上畅通无阻地运行。幸运的是,现在的网络一般都是千兆带宽或光纤网络,带宽问题对应用不夠程序性能造成的影响也在逐步降低。
二、操作系统相关资源
基于操作系▅统的性能优化也是多方面的,可以从系统安装、系统内核参楊空行笑瞇瞇数、网络参数、文件系统等几个方面进行衡量,下面依次进行简单介绍。
1、系统安謝掌教装优化╱
系统优化可以从安装操↑作系统开始,当安装Linux系统时,磁盘的划分,SWAP内存的分配都直接影响以后系统的运行性能,例如,磁盘分配可以遵循应用的需求:对妖王已死于对写操作频繁而对数据安全性要求不高的应用,可以把磁盘做成RAID 0;而对于对数据安全性较→高,对读写没有特别要」求的应用,可以把磁盘做成RAID 1;对于对读操作要求较那個洞口絕對是有寶貝高,而对写操作无特殊要求,并要保证数据安全性的应用我就斬了你,可以选择RAID 5;对于对读写要』求都很高,并且对数据安全性要求也很高的应用,可以选择RAID10/01。这样通过不同的应用需求设置不同的RAID级别,在磁盘底层对系统进行优化操作。
随着内存价格你放心的降低和内存容量的日益增大,对虚⊙拟内存SWAP的设定,现在已经没有了所谓虚拟内存是物理内存︽两倍的要求,但是SWAP的设定□还是不能忽略,根据经验,如果内存较小(物理可以這么說内存小于 歐呼目光陰森4GB),一般设置SWAP交换分区大小为内存的2倍;如果物理内算盤也是打得亮存大于8GB小于16GB,可以设置SWAP大小等∏于或略小于物理内存即可;如果内存大小在16GB以上,原则上可以设置SWAP为0,但并不建议这么做,因为设置一定大小的SWAP还是有一定作用▲的。
2、内核参数优化
系统安装完成后,优化工作并没有结◣束,接下来还可以对系统内他知道自己核参数进行优化,不过内核参数的优化要和系统中他是仙器之魂部署的应用结合起来整体考虑。例如,如果系统部署的是Oracle数据库应╲用,那么就需要对系统共享内存段(kernel.shmmax、kernel.shmmni、kernel.shmall)、系统信号量(kernel.sem)、文件句柄(fs.file-max)等参数进行优化设置;如果部署的是Web应用,那么就〓需要根据Web应用〖特性进行网络参数的优化,例如修改net.ipv4.ip_local_port_range、net.ipv4.tcp_tw_reuse、net.core.somaxconn等网络内核参数。
3、文件系№统优化
文件系统的优化也是系统资源优化的一个相比于四大影忍重点,在Linux下可选的文件系统有ext2、ext3、ReiserFS、ext4、xfs,根据不同的应用,选择卐不同的文件系统。
Linux标准⌒ 文件系统是从VFS开始的,然后是ext,接着就是ext2,应该说,ext2是Linux上标准的文件系统,ext3是在ext2基础上增加日志形成的,从VFS到ext4,其设计思想没有太大变化,都是早期UNIX家族基于不幫忙也是正常超级块和inode的◇设计理念。
XFS文件系统是一个高级日志文件系统,XFS通过↑分布处理磁盘请求、定位数据、保持Cache 的一致性来提供对文件系统数据的低延迟、高带鄭云峰也在一旁笑著說道宽的访问,因此,XFS极具伸缩性,非常健壮,具有优秀的日志记录功能、可扩展性⌒强、快速写入性能等〗优点。
目前服务器端ext4和xfs是主流文件系统,如何选择合适的文件系统,需要心中大喜根据文件系统的特点加上业务的需求Ψ 综合来定。
三、应用程序软件资源
应用程序的优化其实是整◤个优化工程的核心,如果一个应△用程序存在BUG,那么即使所有其他方面都达到了最优状态,整个应用系统还是性這怎么回事能低下,所以,对应用程序的优化是性能优化过程的重中之是重,这就对程序架⊙构设计人员和程序开发人员提出了更高的要求。
以娘上就是影响Linux性能的因素,希望本次分享可以帮助到大家!
金源在线不禁想起客服
QQ在线咨询
咨询电话
010-83650488
在线咨询