张宙+邹伟政
摘要;随着信息技术的发展,各个行业领域通过运用信息技术提高了工作效率,降低了业务服务成本。为优化建设信息系统集中化信息平台,通过积极尝试创新架构模式,创新性打造出基于多租户的集中化信息平台架构,为集中化信息平台提供行之有效的架构搭建方案。集中化信息平台架构体系提供标准化与个性化兼备的系统架构模式,提升系统建设质量和用户感知,实现集中化运营工作“高效低成本”的战略目标,使集中化业务朝着多元融合、集中化、规范化的方向稳步迈进!
【关键词】信息技术 信息系统 集中化体系
1 信息化平台系统的现状分析
信息化平台系统为支撑企业内部综合管理,服务员工日常办公、信息获取及业务办理的最重要的信息化系统之一,为推动企业低成本高效率运营提供了有力保障。然而随着企业发展,业务需求出现爆发式增长,致使信息化平台系统存在其局限性,具体表现如下:
(1)承载广泛性,信息化平台系统承载的业务范围广、流程数量多、应用功能杂乱。
(2)业务差异性,各租户从自身管理需求出发进行系统建设,造成了信息化平台系统所承载的业务表现出显著的差异性。
(3)平台异构性,信息化高速发展往往伴随的是应急式、分散式,烟囱式、蛛网式的建设模式,这些从根源上造成了信息化平台系统管理的复杂性。
2 集中化信息平台架构建设的目的
通过对业务需求分析可知:在整个系统中各个部分的职能是不同的,有相当的功能集合可以抽象为公用的基础服务平台,各平台在不同层面上支撑集中化信息平台的整体;集中化信息平台作为基础平台提供整个平台的用户组数据管理,同时对其他平台、应用提供用户数据供给、同步等服务。要求基于多租户的集中化信息平台必须是一个SOA化的,具备完善多租户支持的类似于SaaS的平台。
3 集中化信息平台架构决策因素
3.1 明确边界
服务被调用时,与实现其功能相关的内容都应被传递过来。对服务的所有访问都应该通过公共接口进行。调用服务时,非隐含的假设是必须的。“服务与消息紧密联系,因为参数进出服务的唯一方式是通过消息进行的”。作为通用的模式,服务调用不应依赖于共享的上下文,而应被作为无状态的模块。一个明确的接口会封装服务的内在实现,而服务通过该接口发布自己的功能;与服务交互是一个具体的行为,它依赖于服务使用者和提供者之间消息的传递。
3.2 共享契约和架构
基于一份服务描述(一份契约),服务使用者和服务提供者都可以获得使用或提供服务的全部所需。根据松耦合原则,服务提供者不能依靠服务使用者来重用那些依赖于使用者环境的代码。毕竟,服务使用者可能使用不同的开发环境和运行环境。这条原则给SOA体系中所能交换的数据加上了严格的限制。理想的情况是,数据以符合一种或多种模式的XML文档形式被交换,因为这种方式可应用于各种的编程环境。
3.3 元数据驱动
SOA中所有的元数据对象都需要被按照一种方式储存起来,这种方式将确保元数据对象能够在设计和运行时被发现、检索和解释。元数据对象包括对服务接口、参与者、端点和绑定信息、组织单元和职责、文档类型或模式、使用者或提供者关系等的描述。这些对象的用途应当是被代码自动生成或者解释,成为服务和参与者生命周期的一部分。
3.4 策略驱动及可传输协议格式
为了与服务交互,必须满足以下两组不同的要求:提供者提供的功能、语法和语义必须适应使用者的需求;技术能力与需要必须匹配。
服务通常采用协议格式来发布,协议格式应该是明确的、可传输的并且被服务所支持的。为保证一个服务最大程度的可访问性(及长期的可用性),只要交互过程遵守为该服务定义的策略,那么由任何依照服务接口进行消息交换的平台都可以访问该服务。
4 集中化信息平台架构设计模式
4.1 多子域设计
要让一个软件支持多租户,需要在设计上能对它的数据和配置信息进行虚拟分区,从而使得每个使用这个软件的租户能使用到一个单独的虚拟实例,并且可以对这个虚拟实例进行定制化。要做到这些则不仅需要对它的软件架构进行相应的修改,而且需要对它的数据库结构进行特殊的设计。
通过对云计算架构及多租户技术的分析研究,主要从以下两个方面来对多租户隔离方案进行分析和设计:
(1)多租户的数据隔离。多租户数据隔离是支持多租户解决方案中一项非常重要的技术,数据隔离的失败将会给多租户环境中的每个租户带来安全隐患。多租户环境中,各租户的数据不允许被共享,所以应该采取相关的保护措施来支持多租户中每个租户的数据使其不能被其他租户所访问。
(2)多租户的应用隔离。多租户的应用隔离主要从应用部署的技术体系中不同的层次来考虑,通常分为三种方案,简述如下:
中间件方法:在共享中间件方法中,又可以分别实现:单应用实例/共享中间件、多应用实例/共享中间件、多应用实例/隔离中间件等方案。
虚拟化方法:在虚拟化方法中,主要是将租户的应用隔离下放到操作系统层级,基于操作系统镜像分别为不同的用户服务,实现应用层面的隔离。
应用服务提供者方法:在应用服务提供者的方法中,主要是将租户的应用隔离下放到硬件层面,通过不同的主机为不同的租户服务,从而实现租户之间的完全隔離。
4.2 分权设计
对于集中化信息平台的建设,将采用集中化建设,引入分权的授权及鉴权模型。分权从两个维度对授权进行控制。
第一个维度是权限的使用范围。对于整个平台,将作为一个总域而存在,而各租户作为总域中的各子域而存在,在域的层级关系上也是一个树的模型,对于目前此域的模型只包含一个2级的树。对于范围的授权,有两种方式:组织域优先级业务域优先。
第二个维度是权限的具体内容。传统的权限控制是扁平式的,用户所具有的权限是某些具体权限的组合。如果某个用户具备给别的用户授权的权限,则其可以将任意权限赋予其他用户。因此传统的授权模型里,通常只有管理员具备给其他用户授权的能力。
基于这两个模型实现集中化信息平台的分权分域管理后,各租户可按照自身需求对系统进行个性化配置,同时实现权限管理和域隔离,保证不同子域的数据安全,并且实现业务及管理的精细化授权。
5 总结
信息系统集中化信息平台的建设,建立了标准化的基于多租户的集中化信息平台架构,极大地提升集中化系统的质量和用户体验,实现集中化系统“高效低成本”的战略目标。集中化信息平台架构研究也为其他集中化业务以及企业产品的大规模业务接入作出了先行探索与尝试,积累了丰富的经验,提供了行之有效的集中化建设方法。endprint