如何选择最合适的服务器方案(一):服务器硬件配置
我们抛掉租用服务器还是自行订购服务器进行托管的问题,在这篇文章里,我们讨论的是无论租用或托管都要面临的一个问题,那就是选择服务器的硬件配置。由于上帝不会给你一台服务器来满足所有需求,解决所有的问题。尤其是我们身处在这样一个急剧变化的时代,当你还在为最新款最强劲的CPU乍舌不已的时侯,Intel、AMD却早已在合谋下一次劫掠你皮夹的时机了,当然,她们早早已将未来10年的CPU演变公路设计妥当,布好一个又一个的坑在等着你跳进去,简直如同阴谋通常。没错,这一切就是阴谋!
不成功的服务器选择会给企业带来好多营运问题:假若不经认真仔细的评估,仓促的选择一台性能超级强劲让你高枕无忧但价位高昂的服务器,毫无疑惑会带来成本上的极大浪费;但若果一味为了省钱,而选择一台很容易成为估算困局,或没有充分考虑冗余举措的服务器,都会极大影响业务的运行,顾客投诉网站速率超慢,硬碟出现故障造成数据遗失,由于这种,你自此没有了美好的睡眠,每日提心吊胆,更要命的是,公司因而遗失了几十亿元的订单。
你须要从不同的角度来决定选择一台哪些样的服务器,找到满足技术须要、业务发展和成本控制之间的最佳平衡点,为了做到这一点,绝对还是须要一点智慧。51idc将在下边为你们介绍一些便于理解,尽可能全面的建议,并帮助你作出决定。
先不要急于决定须要如何的CPU,几个硬碟,几个G显存,须要多少兆带宽这样的问题,这些是我们最后须要得到的答案。在这之前,先一起梳理几个问题。在下边,我们列举了一些“多少”或“什么样”的问题,拿起你的笔或在记事本里新建一个文件,尝试依据下边四个问题来评估自己的需求:
服务器运行哪些应用?
我的业务有多重要?
1服务器运行哪些应用?这是首先须要考虑的问题,在这儿你要按照服务器的应用类型,也就是用途,来决定服务器的性能、容量和可靠性需求。我们根据后端服务器+应用程序服务器+数据服务器的常见基础构架来讨论:
1.1Web后端:正常情况下,我们觉得大多数Web后端服务器(Front-end)对服务器的要求不大,比如静态web服务器、动态Web服务器、图片服务器等等,由于在现有的技术框架中,我们有好多方案可以解决后端服务器的性能扩充和可靠性问题,比如LVS、nginx反向代理、硬件负载均衡(F5,A10,)等。甚至在好多访问量不高(几百个用户同时在线)的应用中,51IDC的精典赛扬服务器就可以满足需求。
1.2应用服务器:因为承当了估算和功能实现,我们须要为基于Web构架的应用程序服务器()选择足够快的服务器,另外应用程序服务器可能须要用大量的显存,尤其是基于基础构架的Ruby,,Java服务器。这一类服务器起码须要使用单路至强的配置。对于可靠性的问题,假如你的构架中只有一台应用服务器,那肯定须要这台服务器足够可靠,RAID绝对是不能忽略的选项。但若果有两台或更多的应用服务器,并设计了负载均衡机制,具有冗余功能,那我们则毋须将每台服务器武装究竟。
1.3特殊的应用:不仅作为Web构架中的应用程序服务器之外,假如你的服务器是拿来处理流媒体视频编码、服务器虚拟化、媒体服务器(之类),或则作为游戏服务器(逻辑、地图、聊天)运行,则同样对CPU和显存需求比较高,我们起码要考虑单路至强的服务器。其中服务器虚拟化对储存的可靠性的要求都十分高,由于一个篮子里有十几个蛋黄,篮子一定要足够牢固才是。
1.4公共服务:我们指的是短信服务器、文件服务器、dns服务器、域控服务器这类服务器。一般情况我们会布署两台DNS服务器作为相互备份,域控主服务器也会拥有一台备份服务器(专用的或非专用的),所以对于可靠性,无需达到严苛的地步。至于短信服务器,起码须要具备足够的硬件可靠性和容量大小,这主要是为了对电邮数据负责,由于好多用户没有保存和归档电邮数据的习惯,当她们重装系统后,总会依赖重新下载服务器上的数据。至于性能问题,我们觉得须要评估用户数目就能决定。
1.5数据库:我们最后讨论的应用,也是要求最高,最重要的服务器。无论你使用的是mysql、还是,通常情况下,我们觉得它须要足够快的CPU,足够大的显存,足够稳定可靠的硬件。单路至强CPU/4GB显存/Raid1绝对是入门配置。关于确切的配置我们须要再讨论业务需求后才会作决定。
2服务器须要支持多少用户访问?服务器肯定是为了提供某种服务,而使用这种服务的用户同样是我们必须考虑的诱因,有几个具体的问题你须要作出评估:
有多少注册用户?正常情况下有多少用户会同时在线访问?每晚同时在线访问的最高峰值大约是多少?
这种问题,对我们决定采用哪些样的CPU,多大的显存有着至关重要的影响。51IDC建议你的技术人员和业务部门坐在一上去讨论这几个问题,最后甚至须要根据特定的技术模型和算法,将这种数字转化为一些更具体的技术数字,比如并发多少个联接(好多时侯,用户数与联接数不是一个概念)。同时,你还要对未来的用户下降做一个尽可能确切的预测和规划,你的服务器须要支持越来越多的用户。
3须要多大空间来储存数据?我们须要从两个角度来估算这个问题,一个角度是有什么类别的数据,包括:操作系统本身占用的空间、安装应用程序所须要的空间、应用程序所形成的数据、数据库、日志文件、邮件数据等等,假若是Web2.0类的网站,你还要估算每位用户的储存空间;另一个角度是从时间轴来考虑,这种数据每天都在下降,你起码要为未来1年(我们建议2~3年)的数据下降做个确切的测算,这可能一直须要你的软件开发人员和业务人员一起提供足够的信息。最后你一直须要为估算下来的数字结果乘1.5左右的系数,便捷维护的时侯做各类数据备份和文件转移操作。
4我的业务有多重要:你须要依照自身的业务领域,来遵守一些要求,我们在下边举几个简单的反例,帮助你理解这种服务器对可靠性、数据完整性等方面的要求:
4.1假如你的服务器拿来运行一个博客,与同学们分享观点。这么我相信,一台赛扬服务器,1G显存外加一块160GB的硬碟就足够了。即使服务器出现了一点硬件故障,致使几个小时甚至一十天不能提供访问,生活会照常继续,天也不会塌出来。
4.2假如你的服务器拿来作为测试平台,这么就不会如生产环境那样,对可靠性有极高的要求,你所须要的可能只是做好例行的数据备份,服务器宕机后,能有个人在明天把问题解决掉就OK了
4.3假如你是一个电子商务公司,服务器正在运行电子商务网站平台,这么请一定要像注重女同事一样注重服务器,当硬件发生故障而造成宕机,你须要对以下危言耸听的后果做好心理打算:投诉电话被打爆、顾客大量流失、顾客要求退货、市场推广费用打水漂、员工无事可干,公司营运深陷截瘫、数据遗失(这是最痛楚最灾难的结果,我们经历了太多这样的案例,它甚至会造成一个公司就此衰落)
在这儿,我们当然只须要简单讨论你的业务对服务器硬件可靠性的要求。换言之,假如你认为业务不能承当硬碟损毁带来的停机或数据遗失风险,这么一定要选择一个合适的Raid卡,对于冗余电源问题,道理一样。(全面解决这个问题,不单考虑单个服务器的硬件,还须要结合系统构架的规划设计和运维管理来剖析,这部份我们将单独撰写文章来讨论。)
在完成以上问题后,我们接出来就可以决定那些具体选项:
选择哪些CPU?
追忆一下里面”服务器运行哪些应用?“和“需要支持多少用户访问?”两个问题的答案,这将帮助我们来选择合适的CPU。毫无疑惑,CPU的显存越高,其性能也更高;两个CPU要比一个CPU来得更爽,至强肯定比赛扬更生猛。但我们到底须要选择如何的CPU?我们在这儿为你提供一些常见情况下的建议:
1假如你的业务刚才起步,预算不是很充足,建议你选择一款精典赛扬服务器,虽然51IDC的E5300服务器最实惠只须要450块钱一个月。并且,之后你可以依据业务发展情况,随时升级到更高配置的服务器。
2假如你须要在一台服务器同时运行多种应用服务,比如.Net++,这么一个单路至强(比如X3330)或新一代赛扬I3/I7(四核四线程)将是最佳的选择。似乎从技术角度,这不是一个好主意,但起码就能帮你节省一大笔成本。
3假如你的服务器运行、MySQL或则,但是目前有几百个用户同时在线,未来就会不断下降,这么你起码应当选择安装一个E5504(或更高显存)的至强服务器。当半年后负载越来越大的时侯,可以选择降低一个CPU。
4假如你须要一台游戏服务器,这么我们建议你选择一台单路或双路的至强服务器。
5须要注意的是,使用双路CPU须要应用程序的支持,倘若应用程序本身没有对双路CPU进行代码优化,就不会带来性能的明显提高,并且将导致投资的极大浪费。
须要多大的显存?
同样,”服务器运行哪些应用?“和“需要支持多少用户访问?”两个问题的答案,也将帮助我们来选择合适的显存容量。相比于CPU,我们更觉得显存(RAM)是影响性能的最关键诱因。由于在相当多正在运行的服务器中,我们发觉CPU借助率通常都在10%~30%之间,甚至更低。但我们发觉因为显存容量不够而造成服务器运行平缓的案例比比皆是,假如服务器不能分配足够的显存给应用程序,应用程序就须要通过平缓的硬碟插口来交换读写数据,这将造成网站慢的令人难以接受。显存大小主要取决于服务器的用户数目,其实也和应用软件对显存的最低需求和显存管理机制有关系,所以,最好由你的程序员或软件开发商给你最佳的显存配置建议。我们同样在下边给出了一些常见应用环境下的显存配置建议:
1无论是下的iis还是Linux下的,通常情况下Web后端服务器不须要配置非常高的显存,尤其是在集群构架中,1GB-2GB就已足够。只有当几千个并发用户,并运行动态脚本的时侯,我们就会考虑使用4GB或更高的显存。
2对于运行、Resin、、或.Net这样的应用服务器,2GB显存应当是基准配置。更确切数字须要依照用户数目和技术构架来确定。
3数据库服务器的显存由数据库实例的数目、表大小、索引、用户数来决定,通常建议配置4GB以上的显存,我们甚至在好多的顾客案例中使用了24GB到48GB的显存。
4例如Imail、Notes、这样的短信服务器对显存的要求也并不高,1GB-2GB就可以满足了。
5对于一台文件服务器,1GB显存可能就足够了。
6还有一些特殊的服务器,我们须要为之配置尽可能高的显存容量,包括Squid,这样的缓存服务器,和。
事实上,前面的数字早已足够慷慨,因为显存技术的不断进化和价钱不断增加,我们才得以近乎奢华的讨论4G、8G、16GB那些以前不可想像的显存容量。早在2000年的时侯,我面对的大多数服务器都是256MB、512MB显存,1GB早已算是顶配,而那时同样也须要满足大量用户的访问。所以,不仅花钱订购显存来满足应用程序的贪婪之外,系统优化和显存管理始终是我们须要注重的问题。
须要如何的硬碟储存系统?
硬碟储存系统的选择和配置是整个服务器系统里最为复杂的一部份,我们须要考虑硬碟的数目、容量、接口类型、转速、缓存大小,以及是否须要Raid卡,Raid卡的机型和Raid级别等问题。甚至在一些高可靠性高性能的应用环境中,我们还须要考虑使用如何的外部储存系统(SAN、nas或DAS)。下边的图表可以帮助我们顺利地决定硬碟系统的相关问题。
网卡的问题
假如你的基础构架是多服务器环境,但是服务器之间有大量的数据交换,这么我们建议你为每台服务器配置两个或更多的网卡,一个拿来对外提供服务,另一个拿来做内部数据交换。假如你对安全的要求非常高,我们甚至可以单独安装一个用于系统管理和日常维护的网卡。
至于网卡端口的速度问题,这主要取决于你对带宽流量的评估。大多数情况下,千兆网卡足够拿来对外提供服务,而内部数据交换建议使用百兆网卡。但话说回去,不仅精典赛扬服务器之外,我们如今很难找到千兆插口的服务器显卡了。
还有一种情况须要注意,假若你选择51IDC的数据备份服务(),则须要一块单独的网卡联接到专有的数据备份网路中,进行每晚的数据备份,这会带来几个益处:不会占用宝贵的内网带宽、保证数据传输的安全、提供快速的数据备份速率。
我们十分希望这篇文章才能帮助你为服务器选择合适的硬件配置,假如你阅读后发觉有不正确的地方,请在评论手指下来,我们会及时更新并谢谢你的热情见谅。
数据湾IDC: