服务器的冗余设计有哪些方面?如何实现?

服务器的冗余设计有哪些方面?如何实现?,第1张

,规模不大,一般有30人左右的小规模网络环境。在具体应用中通常以单功能应用为主。这类企业往往仅单一地使用下面的应用,包括财务系统、办公自动化系统、CAD、库存管理系统或人事等管理系统等,或者同时使用其中的两三种应用。这类企业用户的数量占我国企业总数的60%左右。

造成这种情况的原因是小企业技术力量相对比较薄弱,资金也不够充分。因此,一些企业的信息系统在应用方面还存在不少问题。其中服务器的选择特别突出。例如,笔者曾看到某企业有由一个6台计算机组成的小局域网,其中服务器是一台装有两路Pentium Ⅲ Xeon(内置1MB缓存)并带有热插拔硬盘的部门级服务器,用作域控制器和文件共享。

再过了一段时间后,用户对这台服务器颇有微词: 体积很大,噪音不小,每天的开机时间特别漫长,更糟糕的是速度并不快。总之,花钱不少,效果却非常不理想。

此类小企业用户不在少数。他们在组建网络时,在信息系统的设备,尤其是系统的心脏——服务器的选择方面,通常表现出很大的困惑。而面对小企业用户的代理商和集成商,在常见的应用与服务器选择的关系上通常也是一知半解,使得应用更加不理想,不利于中小企业信息化的开展。笔者在本文中根据多年的服务经验,对小型企业选购服务器提出一些建议,供大家参考。

一、服务器选购策略

选择一款合适的服务器来满足用户的需要,需要对服务器使用有一个正确的理解。在进行服务器选配时,应根据以下3个方面来考虑。

1.网络环境及应用软件

是指整个系统主要做什么应用。具体来说就是服务器支持的用户数量、用户类型、处理的数据量等方面内容。不同的应用软件工作机理不同,对服务器选配的要求区别很大,常见的应用可以分为文件服务、Web服务、一般应用和数据库等。

2.可用性

服务器是整个网络的核心,不但在性能上能够满足网络应用需求,而且还要具有不间断地向网络客户提供服务的能力。实际上,服务器的可靠运行是整个系统稳定发挥功能的基础。

3.服务器选配

服务器类型,如低端、中端和高端的分类,只是确定了服务器所能支持的最大用户数。但要用好服务器,还需要优化配置,用最小的代价获得最佳的性能。

服务器选择的多样性

目前中小企业在选购服务器时,通常在高档商用PC、伪服务器以及低档服务器三种产品之间选择。下面分别对这三种服务器作一简单分析。

1.高档商用PC

PC工作在单用户和单线程环境中,与服务器的多用户环境有显著的不同。PC在设计时采用不同部件选型、配置的策略,如增强的显示性能、相对较差的网络子系统等。高档PC的目标是进军低档工作站市场。

2.伪服务器

最差劲的是用PC的处理器芯片、服务器的名来充当服务器,稍微好一些的服务器采用部分服务器技术,如专业电源等。

3.低档服务器

通常兼顾性能、可扩展性、可用性和可管理性等多个性能指标,兼容多种操作系统以支持多种网络环境。此种产品的缺点(也是辨别方法)是:体积大(通常外形不够美观)、噪音大(散热风扇多)、功率大。

服务器选配方法

国内市场上,服务器厂商多达十几个,低档服务器更有几十款之多。下面结合至翔899来谈谈服务器配置问题。

1.磁盘子系统

上面已经提过磁盘的故障概率及危害,不如直接配置双硬盘做RAID-1,因为现在硬盘的价格已降到了冰点,既提高了磁盘读取数据的性能,又保护了数据,可使用户高枕无忧。令Linux用户放心的是,至翔899的IDE RAID支持Linux。

2.内存

在小型用户环境中,内存通常得不到重视,用户往往花费更多的时间关注CPU的性能。由于Windows 2000就要消耗100MB以上的内存,再加上应用,所以系统最少应配置256MB内存,配置到1GB也不为过。请牢牢记住,提高内存容量通常是提高服务器性能的最有效的方法。

3.CPU

通常不会成为系统瓶颈。但对于需要CPU进行密集型的运算,如数据库类应用,CPU的作用就很巨大。记住:如果再增加一颗CPU,内存容量要同时加倍,才能有效发挥CPU的性能。

4.网卡

低端应用环境中,100Mbps网卡足够了。至翔899的网卡还支持网络冗余(ALB)功能。有兴趣的用户可以另买一款同型号的Intel 82559网卡进行网卡绑定,既提高网络子系统的吞吐量,又保证了线路冗余。

下面简单介绍一种或许可行的方案,仅供参考

------------------------

1)默认要有一个版本更新接口

告诉客户端当前版本是否还在兼容范围内,假如不是,强制升级。(假如还可以用且不是最新,建议升级)

2)接口多版本并存规则

同一个业务接口,可能存在多个版本。

如 购物下单,可能由于业务需求的变更,导致存在着 1.0 / 2.0 / …… 等多个接口

[version] //默认版本

public void Order()

[version(1.2)] //1.2版本

public void Order()

[version(2.0-3.4)] // 2.0-3.4版本

public void Order()

多版本管理,特殊版本则调用特殊方法,不存在特殊版本/不在特殊版本内,则调用通用方法。

假如是未来那个版本做大变更了(将成为通用版本),那么无外乎就是把主/特殊 对调一下

[version] //默认版本

public void Order()

[version(1.0-1.1)] //1.0-1.1版本

public void Order()

[version(1.2)] //1.2版本

public void Order()

3)给客户端分配版本号并管理好

调用方式可以类似所有请求加版本号,从原来的 http://url/…… 变更为 http://url/v1.0/…… 表示当期客户端用的是 1.0版本接口

4)其他说明

这个方案需要关注的是,客户端对接口版本调用的对应关系的管理。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/701494.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-04
下一篇2023-08-04

发表评论

登录后才能评论

评论列表(0条)

    保存