选择服务器硬件是进行性能优化的第一步。不管你是自己买服务器做主机,还是租一台云主机,你都要面对一个问题:选择服务器的硬件配置。
在选择哪种服务器时,我们需要从不同的角度,多方面,寻找最好的平衡点,以满足技术需求,商业发展和成本控制。
下一步,我们将讨论如何进行服务器硬件的选型。
多协议标签交换(MPLS) 是一种用于快速数据包交换和路由的体系,它为网络数据流量提供了目标、路由地址、转发和交换等能力。更特殊的是,它具有管理各种不同形式通信流的机制。
要运行哪些服务器?
根据服务器的使用情况,我们将决定服务器的性能、容量和可靠性要求。
在本文中,我们将介绍最典型的基础设施:Web服务器、数据服务器、应用程序服务器。
第一,网站服务器。
Web服务器对硬件的要求不高,甚至一般的硬件配置(2个4核,8G内存,1T硬盘)就可以满足需求,如果后期Web服务的访问量增加,只需增加相同配置的服务器加入到一个负载平衡的集合,就可以实现Web服务的性能扩展。
二、数据服务器。
对于硬件来说,数据服务器的需求最大,其主要特点是CPU速度快,内存大,磁盘IO又快又稳定。例如:MySQL、Oracle服务器要求CPU配置必须良好,最好是双路志强Gold金牌,SSD系列最好。
而且Redis服务器主要是内存应用程序,因此要求内存必须足够大,而且可扩展性好,而对磁盘和CPU的要求则不那么高。
三,应用服务器端。
计算和功能实现是应用服务器的典型特点。CPU配置,至少有双路志强银牌Silver系列。在可靠性方面,如果只有一台服务器,那么这台服务器必须足够可靠,才能保证磁盘能够满足RAID1阵列的需求。
4、其他公众服务器。
此外还提供了一些公共服务器,如邮件服务器、DNS服务器、域控制器等。稳定要求比较高,所以一般会建议至少两个主机进行主备部署。对于硬件而言,没有特殊的要求,因此一般都是硬件。
一个商业系统支持多少用户?
我们需要考虑有多少用户使用这些服务来提供某种类型的服务,还有一些具体的问题需要我们进行评估:
预计有多少用户同时在线?
估计每日同时在线访问的最高峰值是多少?
预计的数据量是多少呢?
估计网络宽带的使用量?
存储数据需要占用多大的空间?
这件事我们得从两个方面考虑。一种观点是存在什么样的分类数据,另一种观点是数据增长的速度,例如:根据这一增长速度,每天可能增加多少数据,未来1-3年内数据量就可以规划出来。
最终我们可以得到一个更具体的数,还需要用大约1.5的系数来计算数字结果。
商业的重要性如何呢?
对于不同的业务系统,服务器可以提供不同的应用服务,其重要性直接影响到服务器的选择配置。
第一,门户网站。
一台服务器,铜牌Bronze单通道cpu,4G内存,500GB就够了,而且也不需要备机,即使服务器有一点硬件故障,几个小时,甚至一两天的访问,工作就会照常进行,不会断。对于企业也没有什么影响。
二、测试平台。
若只进行功能测试,则对硬件配置基本没有要求,虚拟机也能满足要求,而若进行性能测试,则可根据性能测试的方向,选择某一方面较强的硬件。
三是电子平台。
中央处理器要足够好,内存要足够大,磁盘必须有RAID10。与此同时,还部署了主、备体系结构,对数据进行实时备份,异地远程备份,由于业务系统重要,一旦出现故障,直接造成损失。
如何选择CPU?
CPU的主频越高,其性能就越好;两个CPU来得比一个CPU要好;即品牌,即Intel和AMD,它们在Intel服务器市场上的份额就越大。通用情况:
1、公司业务刚刚开始。
在这个时候,你的预算可能也不够充裕,所以建议你选择一台英特尔到强铜单路CPU,但记住要保留扩展接口。
二、运行多种服务。
例如apache+php+tomcat+mysql体系结构,它们都运行在一台计算机上,因此建议使用英特尔至强牌双路CPU,这是个很好的选择。
3、请运行SQL/Oracle。
那至少应该选择一个英特尔至强双路10核CPU,并为CPU预留扩展接口,当负载变大时,可以选择将CPU增加到四路。
要求多少内存?
内存(RAM)与CPU相比,实际上是影响性能的最关键因素,许多业务系统的CPU利用率一般在10%~50%,甚至更低。
Web前端服务端。
比如apache,nginx。由于Web服务器主要处理静态请求,因此不需要太大的内存,每天的访问量数十万,4GB的内存就足够了。
2、java会加重应用服务器的负担。
例如Tomcat,Resin,WebLogic,Websphere,jboss等等。在16GB-32GB之间配置的内存是大于32GB的,超过32GB的配置基本上是浪费内存。
3、存储式商务系统。
举例来说:redis、Squid、Varnish、Memcached等等,我们需要为服务器配置最大的内存容量,因为这些应用程序所使用的主要内存是内存。
硬盘存储需求如何?
在整个服务器系统中,硬盘存储系统的选择和配置最为复杂,我们需要考虑硬盘的数量、容量、接口类型、速度、缓存的大小,以及是否需要使用Raid卡、Raid卡的型号以及Raid的等级。
一、磁盘类型。
现有SATA、SAS、SSD三种类型,SATA、SAS属于机械硬盘,低转速、低读写速度,但价格便宜、容量大。SSD是属于固态硬盘的,读写速度快,缺点是成本较高。
RAID2。
有软RAID、硬RAID之分。软盘RAID的所有功能都有操作系统和CPU完成,没有单独的RAID控制器处理芯片和I/O处理芯片,效率最低。硬碟RAID装备有专用的RAID控制器来处理芯片、I/O处理芯片和阵列缓冲,不会占用CPU资源。
如何选择网卡?
网络卡与服务器的网络带宽相互影响,本文从网卡的速率和冗余两个方面进行了分析。
一是网卡速率。
究竟是选择千兆网卡,还是万兆网卡呢?这主要要看我们对带宽的估计。多数时候,千兆网卡足够用于外部网络提供服务,而如果内部数据交换非常频繁,比如hadoop业务,则推荐万兆网卡。
二、网卡稳定。
对于网络稳定性要求较高的场合,建议使用双网卡进行冗余,两种网卡连接在不同的交换机上,以保证任意一种网卡故障都不影响业务的正常进行。