论计算机网络中服务的概念(2)
2015-06-25 01:06
导读:系统管理员在构建一个服务时必须要作几个决策,比如从哪个厂家买设备、对于一个复杂的服务用一台还是多台服务器、构建服务时要留多大的冗余度。一
系统管理员在构建一个服务时必须要作几个决策,比如从哪个厂家买设备、对于一个复杂的服务用一台还是多台服务器、构建服务时要留多大的冗余度。一个服务应该尽可能的简单,尽可能小的依赖性,这样才能提高可靠性和易维护性。
另一个使服务易于维护的方法是使用标准硬件、标准软件、标准配置以及把文件放在标准位置,对服务进行集中管理。例如,在一个公司中,用一个或两个大的主要的打印服务器比零星分布的几百个小服务器使服务更容易得到支持。最后,也是非常重要的是在执行一些新服务时,服务所在的机器在用户端配置时最好使用基于服务的名字,而不是用真实的主机名,这样服务才会不依赖于机器。如果你的操作系统不支持这个功能,那就去告诉你的操作系统销售商这对你很重要,同时要考虑是否使用别的具有这个功能的操作系统。
一旦服务建好并完成了测试,就要逐渐转到用户的角度来进行进一步的测试和调试。
1. 用户的要求
建立一个新服务应该从用户的要求开始,用户才是你建立服务的根本原因。如果建立的服务不合乎用户的需要,那简直就是在浪费精力。
很少有服务不是为了满足用户的需求而建立的,DNS就是其中之一。其它的如邮件服务和网络服务都是明显为了用户的需求建立的。用户需要他们的邮件用户端具备某些功能,而且不同的用户想要在网络上作不同是事情,这些都依靠提供服务的系统设置情况。其它的服务如电子购物系统则更是以用户为导向的了。系统管理员们需要理解服务怎样影响用户,以及用户的需求又如何反过来对服务的设计产生影响。
搜集用户的需求应该包括下面这些内容:他们想怎样使用这些新服务、需要哪些功能、喜欢哪些功能、这些服务对他们有多重要,以及对于这些服务他们需要什么级别的可用性和技术支持。如果可能的话,让用户试用一下服务的试用版本。不要让用户使用那些很麻烦或是不成功的系统和项目。尽量计算出使用这个服务的用户群有多大以及他们需要和希望获得什么样的性能,这样才能正确的计算。
中国大学排名
2. 操作上的要求
对于系统管理员来说,新服务的有些要求不是用户直接可见的。比如系统管理员要考虑到新服务的管理界面、是否可以与已有的服务协同操作,以及新服务是否能与核心服务如认证服务和目录服务等集成到一起。
系统管理员们还要考虑怎样规划一个服务,因为随着公司规模的增长,所需要的服务当然也会比当初预期的有所增长,所以系统管理员们还得想办法在增长服务规模的同时不中断现存的服务。
一个相对成熟的方法是升级服务的路径。一旦有了新版本,如何进行升级呢?是否得中断现在的服务呢?是否要触及桌面呢?能不能慢慢地逐渐升级,在整个公司发生冲突之前先在一些人中进行测试呢?所以要尽量把服务设计得容易升级,不用中断现有的服务就能升级,不要触及桌面而且能慢慢地逐渐升级。
从用户期望的可靠性水平以及系统管理员们对系统将来要求的可靠性的预期,系统管理员们就能建立一个用户期望的功能列表,其内容包括群集、从属设备、备份服务器或具有高可用性的硬件和操作系统。
系统管理员们需要考虑到由服务主机位置和用户位置而引起的网络性能问题。如果远程用户通过低带宽、高等待时间连接,那这样的服务该怎么完成呢?有没有一种方法可以让各个地方的用户都获得好的或比较好的服务呢?销售商很少测试用他们的产品连接时是否高等待时间的――即RTT值是否比较大――每个人从程序员到销售员都忽略了这个问题。人们只是确信内部测试的结果。
3. 开放的体系结构
一个新服务,不管在什么情况下,只要可能,就应该建立在使用开发式协议和文件格式的体系结构上。特别是那些在公共论坛上记录成文的协议和文件格式,这样销售商才能依据这些标准生产出通用的产品。具有开放体系结构的服务更容易和其它遵循相同标准的服务集成到一起。
开放的反义词是私有,使用私有协议和文件格式的服务很难和其它产品共同使用,因为私有协议和文件格式的改变可以不发布通知,也不要求得到协议创造者的许可。当销售商扩展到一个新领域,或者试图保护自己的市场而阻止创造一个公平竞争的环境时,他们会使用私有协议。