web服务器硬件软件配置选择

本文节选自浅谈服务器性能测试的全生命周期——从测试、结果分析到优化策略
小白用户一个,前段时间自己选择云服务器时就面临了不知道选什么参数配置的问题,也不知道各个性能指标是怎样限制服务器性能的。觉得此文拿来做科普非常好,这里备忘一下。

如何选择硬件

硬件对服务器性能影响还是蛮大的,如果是土豪的话,可以直接买最好的。我们分析硬件主要是希望选择合适的配置,节约资源,避免出现高射炮打蚊子的情况。

CPU

在资金的充足下,一般来说CPU的数量越多,主频越高,那么服务器的性能也就会越好。在实际测试过程中,如果在大压力下持续观察CPU的使用率很低,那么CPU的资源基本上是可以满足服务器要求的。这样的情况其实是有点浪费CPU资源的,比较理想的情况是压力不大的时候CPU利用率比较低,压力上来之后CPU利用率保持在60%-70%。

大部分的CPU在同一时间内只能运行一个线程,但是超线程的处理器可以在同一个时间运行多个线程,我们可以利用处理前超线程特性提高系统性能。虽然采用超线程技术能同时执行两个线程,但它并不象两个真正的CPU那样,每个CPU都具有独立的资源。当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗CPU的性能。

内存

内存的大小也是影响服务器性能的一个重要因素。内存太小,系统进程要被阻塞,应用程序会变得缓慢,甚至是失去响应;如果太大的话,也是造成一种浪费。Linux系统中采用物理内存和虚拟内存两种方式,使用虚拟内存可以缓解物理内存的不足,但是如果占用过多的虚拟内存的话,应用程序的性能会明显的下降。

网络带宽

网络带宽的大小限制了客户端与服务器交互的流量,相对其他硬件资源,网络带宽在价格上更贵。这需要我们合理预估服务器的可服务器能力,需要占用的带宽资源。

磁盘IO

目前磁盘都是机械方式运作的,主要体现在磁盘读写前寻找磁道的过程。磁盘自带的读写缓存大小,对于磁盘读写速度至关重要。读写速度快的磁盘,通常都带有较大的读写缓存。磁盘的寻道过程是机械方式,决定了其随机读写速度将明显低于顺序读写。在我们做系统设计和实现时,需要考虑到磁盘的这一特性。

操作系统及软件

版本

不同的操作系统在内核实现上可能各不相同,因而对运行在上面的应用程序来说可能影响比较大。

笔者并没有做过分析不同操作系统对服务器性能的影响,因为只用过Linux开发服务器程序。Linux操作系统在这十几年发展的异常迅猛,目前大部分的服务器都是运行在Linux操作系统上的。Linux目前具有最好的生态系统,服务器端的各种软件都为它而设计,默认都认为你是在 Linux 上跑,你要是整一个非 Linux 的服务器,你得有足够的心理准备,因为出现任何问题,你可能未必能找到能帮你解决问题的人。

参数配置

先说一个小故事。福特公司一套重要设备出现故障,找了很多人来维修,结果都没有维修好,没办法了,就在购买设备的英国公司高价聘请一位工程师过来维修,工程师来到之后,反复查找原因,最后在一个小零件上划了一条线,然后对旁边福特公司的人说,在划线的地方切掉就好了,果不其然,切掉之后故障真的解除了,按照合约,福特公司应支付公司一万美元,周围的人都唏嘘不已,感叹一条线就可以价值一万美元,工程师回答到:那条线只值一美元,而怎样找到那条线值9999美元。
我们在测试服务器的过程中,经常会遇到性能上不去。查看CPU,网络,IO消耗都挺低的,就是定位不到问题的原因。有经验的程序员可能会告诉你你把某个参数修改一下,立马性能噌噌噌上去了。比如mysql相关设置,系统文件描述符,缓冲区大小,time_wait快速回收设置等,甚至是线程池配置的线程个数也会对服务器的性能产生较大的影响。

关于数据库参数的设置,比如mysql的配置文件my.cnf文件中,修改不同的配置(比如innodb_flush_log_at_trx_commit 设置为0,1还是2 )可能会对数据库的读写性能影响很大。

应用程序本身实现

比如程序中需要频繁申请内存,使用bzero和memset对服务器性能影响差距可能会很大。

另外程序中的一些查询操作,采用不同的数据结构,可以实现时间和空间上的相互转化,从而影响服务器的性能。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WEB 服务器硬件配置方案 入门级常规服务器配置方案: 硬件名称 基本参数 数量 参考价 CPU 奔腾E2160系列,LPGA封装,双核,工作功率65W,核心电压1.25V,主频1800MHZ,总线频率800MHZ,倍频9,外频200MHZ,128M一级缓存,1M二级缓存,指令集 MMX/SSE/SSE2/SSE3/Sup-SSE3/EM64T 1 ¥460 内存 Kingston DDRII 667 1G,采用PBGA封,频率667MHZ 1 ¥135 主板 采用Intel P965/ICH8芯片组,集成Realtek ALC 662声卡芯片,适用Core2 Extreme/Core 2 Quad/Core 2 Duo/奔腾4/赛扬D/PentiumD系列处理器。前端总线频率FSB 1066MHz 1 ¥599 硬盘 台式机 硬盘容量:160GB 转速/分:7200转/分 缓存(KB):8000KB 接口类型:Serial ATA 接口速率:Serial ATA 300 1 ¥380 机箱 机箱类型:金河田飓风II 机箱样式:立式 机箱结构:Micro ATX/ATX 3.5英寸仓位:1个软驱仓位+6个硬盘仓位 光驱仓位:4个 产品电源:金河田355WB 3C 1 ¥230 光驱 选配,普通DVD光驱 1 - 散热器 热器类型:CPU散热器 散热方式:风冷 风扇转数(RPM):2200 轴承类型:合金轴承 适用范围:Intel LGA775 Conroe、PentiumD、Pentium4 Celeron D全系列 最大风量(CFM):43CFM 1 ¥60 UPS UPS电源类型:后备式UPS 额定输出容量:0.5kva 1 ¥200 稳压器 选配 1 - 显示器 普通显示器 1 - 鼠标键盘 普通PS键盘和鼠标 1 ¥100 备注:作为WEB服务器,首先要保证不间断电源,机房要控制好相对温度和湿度。这里有额外配置的UPS不间断电源和稳压器,此服务器配置能胜基本的WEB请求服务,如大量的数据交换,文件读写,可能会存在带宽瓶颈。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值