选择服务器是一项重大决策,通常费时费钱。错误的决策会导致不良后果。在本文中,我们将首先谈谈一些在规划时需考虑的问题,然后进一步讨论如何在Windows和Unix之间做出选择。
规划考虑因素
在选择服务器时,一个关键的考虑因素是确定采用什么操作系统。这里有几点考虑:
服务器是否要增加到现有的服务器/计算机环境?
现有或所选的应用对OS选择有哪些限制?
把服务器增加到一个现有环境,通常意味着新服务器必须使用和现有服务器一样的操作系统,这是因为应用有所限制以及现有操作人员的技能也有限。
如果需要新的应用,软件厂商可能会要求或强烈推荐使用特定的OS。
Windows vs. Unix和Linux
除非你不得不使用某种专有的OS(如某些IBM系统的OS/40或Z/OS,甚至是Novell的Netware),你一般有三种选择:Windows、Linux或Unix。这里说的Unix包括系统厂商提供的所有Unix系统,如IBM的AIX、惠普的HP/UX或SUN的Solaris。同样,Linux系统也有一些选择。
第一个选择是,使用Windows,还是Unix或Linux的扩展系列。上面已经提到,有时你可能会被迫只能用某种操作系统,但如果你可以自由选择,最好基于产品在扩展性、、强健性和使用成本方面的标准,对产品进行比较。
服务器必须支持多少台客户机?
服务器选择的第一个基本步骤是判断服务器必须同时支持多少台客户机。不同的应用使用的服务器资源量不同,在配置服务器时需要用到这些信息。
无论这些客户机和应用的数目是多少,都只是最初的数目。随着时间的推移,业务活动的增多,或基于计算机的活动增多。这种自然增长使得系统的扩展性显得尤为重要。
扩展性是衡量系统在不同方面升级能力的一个标准,包括处理能力、存储容量、主存大小和网络连通性与带宽。与更换为更大的系统相比,可以进行扩展的系统是一个更省钱、间断性小的选择。
扩展性很关键,但如何合理地估计服务器系统的扩展性,目前并没有太多的信息,也没有什么实用的经验方法。而且,也没有既定的衡量扩展性的测试标准。
请注意很重要的一点,经过长时间测试、试验、再测试的OS具有更好的功能性。尤其是多处理器的操作系统,历史越久的操作系统通常比新推出的系统提供更好的特性。必须支持哪些应用?
在考虑哪个OS最适合你的应用时,最好将这些应用分成四大类:
文件、打印或通信服务器
数据库服务器
应用服务器
计算密集型服务器
这个分类并不是说不同类的应用不能同时存在于同一个服务器。但是,不同用途的系统很容易达到它们的极限,因为很难在不同类别的应用之间确定资源分配优先顺序,除非使用资源管理程序。
为了评估客户机的资源使用情况,首先弄清楚哪些客户机会使用每个应用。每个应用可能需要服务器提供不同的资源组合。
工作性质
下一个要说明的问题是服务器支持的工作性质。它将用于关键业务型的应用,还是工作组,部门范围或企业范围的应用,或是
其它应用?
一台服务器可以专用于一个工作组、一个部门或整个公司内一定数量的应用。显然,把所有需要的应用部署到同一台服务器看上去节省了成本,但这会增加系统的脆弱性,因为一旦有一个应用造成系统崩溃,所有的应用将停止运作。
我们之前也提到过,当一台服务器运行不均匀的工作负载时,很难平衡各应用的资源需要。尽管有可以解决这个资源分配难题的应用,但问题还是很难解决。
一般来说,最好是部署多台服务器,每台服务器专门负责一项或一小部分活动。这样,可以降低系统的脆弱性,因为如果拥有多台服务器,万一一台服务器出现故障,你还可以将工作转移到其它的机器上。服务器冗余性的使用是高可用性系统的基础。财务问题
虽然服务器和必要软件的购买成本明显是总成本的一个很大组成部分,不过我们也强烈推荐在做购买决策时对总体拥有成本(Total cost of ownership,简称TCO)进行评估。
TCO包括直接成本和间接成本。
主要直接成本包括:
软件和硬件的购买成本
运行和管理系统
应用开发、支持和通信
运行和冷却系统的电力费用
系统占用空间费用
间接成本更难以量化,包括系统停机的成本。停机成本不仅包括处理系统不可用性的成本(例如失去生产力),还包括不可用性导致的软性成本。由于系统停机,客户或供应商突然无法与你进行业务,可能转向你的竞争者。
当系统宕机或反应很慢时,用户可能什么事都做不了,只能等待系统恢复。更经常发生的是,他们可能通过彼此通话,寻求帮助,来解决问题。无论是哪种情况,他们都要耗费时间和资源来了解怎么做,这也会增加公司的成本。
对系统价格和性能进行比较是有基准(benchmark)可遵循的。但是由于这些基准是用特定的方法来衡量服务器的,所以你的用法很可能是不同的。虽然结果的基准数是真实的,但使用时必须要注意。建议只把这些基准作为一个指示,或是用于对大量的各种可能进行筛选。千万不要单靠这些基准就做出购买决策。
具有较好扩展性的系统比那些不具有扩展性的系统要贵许多。但是,当你的服务器无法运行必要的工作负载时,购买你所需的更多计算能力通常比升级更换系统更加便宜。