系统说明书 文章模板
Compass 1.0系统说明
-- hd [DateTime(2004-08-18T00:56:44Z)] TableOfContents
系统概述
Compass即Open Global Name Service(开放全局名称服务,以下简称OpenGNS)协议的实现,为OpenUSS(开放统一存储服务)提供7*24可持续运行的支持基础。本文档用以说明Compass的系统功能、结构和整体框架,以及相关开发、使用的信息
Compass是一个名称指向的统称,它是由一系列的服务器硬件和服务器、客户机软件构成的名称指向系统Compass必须依靠可持续运行的系统架构基础进行部署,并将所有的服务器改造为支持该系统架构的机制,才可以真正实现它的目标。只是在现有系统中安装Compass并不能解决任何问题。为解决大容量系统中的多层、多台、多级依赖的情况下系统管理和单点故障的问题。
它的应用主要有:
- 服务发现、服务寻找
- 单点故障的紧急响应
- 服务指向、服务路由
Compass在系统中的体现主要有以下内容:
- 所有的服务器都会使用Compass所提供的OpenGNSP协议与Compass服务器进行通信
- 在可行的情况下,大家可以使用Compass所提供的统一API与Compass服务进行沟通
- Compass会变为一个大容量的系统单元运行在系统的核心层
准确的来说Compass为可能拥有大量服务器的应用系统提供了低成本、高可扩展性、高可用性的基础服务。由于Compass的特点,在设计时应特别关注以下问题:
- 由于Compass是核心服务器,所以应特别注意它的单点故障问题
- 由于Compass会服务于所有的服务器以及服务器中的服务程序,所以它的服务对象会非常的多,为了降低其因高负载而出现问题的机会,所以在系统架构时应尽量考虑将Compass设计为“路过者”而不是“处理者”
- 在客户端和服务器端都会启动侦听,以适应推和拉两种信息更新方式
- 由于Compass的服务对应于多个服务/服务器,所以信息的处理可以使用“推”和“拉”结合的方法减少服务器的负载,同时提高系统的可用性
- 尽量减少Compass存储的数据(字段数和条数)
系统功能
Compass会分布在所有与系统应用相关的服务器上。不理会其架构,我们先阐述清楚Compass有什么样的功能。以下只要谈到服务,哪么就是一个在应用系统中需要关注的、它的运行装态会与别的服务紧密相关的程序。一台服务器可能运行多个服务,一台服务器也可能只运行一个服务。但我们不会理会一个服务运行于多台服务器上的情况,这种情况只会是使用集群技术,这时我们将这一群机器只会视为一台服务器。
以下为系统用例视图:
attachment:usercase.png
系统处理流程
分区管理
我们将一个功能块命名为一个分区。一个分区代表提供同类服务的服务器群,它是一个逻辑上的定义。
新增分区
attachment:seq1_1.png
修改分区
attachment:seq1_2.png
删除分区
attachment:seq1_3.png
系统静态结构和动态结构
系统静态结构
系统动态结构
系统模块及结构