随着时代的进步,科技的发展,企业管理模式发生了巨大的变化,软件行业也得到长足的发展,云计算已是信息技术发展的热点并逐步成为推动信息技术发展的源动力。在信息科技快速的提升的今天,我们如何将行业新技术转化为产品,以满足企业日渐增长的各种需求,如何有效整合企业各种IT资源为公司可以提供更加稳定、高效、智能、丰富的IT服务,如何为企业提供随时随地的IT服务,最终实现为企业提供基于实现战略目标的IT规划和解决方案、提高企业管理水平、增强企业核心竞争力的目标。RS10私有云架构将对这些问题进行解决,依托云架构部署各种应用,以满足企业多变的业务需求,高并发的访问量,海量的数据处理,提高企业生产效率。
RS10系统已历经十余年的发展,这十年是软件行业飞速发展的十年,十年中RS10系统经历数次大的改进和突破,如产品集团版的推出、开发工具的推出、以OPA和TBM为代表的新页面形式的推出等,每一次大的变革都是RS10系统的巨大进步,然而每一次大的变革也都给RS10系统的底层架构带来巨大冲击。而且由于企业的迅速发展和信息建设的全面发展,企业使用信息管理系统的人数在不断增加,信息量不断累积,数据库性能急剧下降,对并发访问量和海量数据处理的需求越来越紧迫,分布式数据库的使用和部署已成为必然。为了产品能有更好的发展,大幅度提升性能,因此支持私有云平台和分布式数据库的部署,提高系统的稳定性和高性能,使RS10走向更高端的市场就成为必然。
物理层:主要包括各种异构的硬件环境和私有云平台的硬件架构,如各种型号的服务器、存储设备、网络环境等。
平台层:平台层是RS10技术架构的基础,也是RS10实现分布式数据库和分布式部署平台的基础,为RS10技术架构提供传统的部署方式和企业私有云服务部署方式。传统部署方式是指在专用服务器上进行WEB服务和数据库服务的部署;企业私有云服务部署方式是指在企业私有云基础架构上部署RS10产品的业务系统和数据库服务。
传统部署方式包括WEB服务的集群式部署、WEB服务的分布式部署、数据库服务的集中式部署以及数据库服务的分布式部署。对于中小型企业可为其部署WEB服务集群和集中式的数据库服务;对于没有搭建企业私有云基础架构的大型集团企业可以为其部署分布式WEB服务和数据库服务。此时专用服务器上WEB服务和数据库服务是RS10新产品技术架构的平台层。
企业私有云服务部署方式是指在企业私有云架构上进行RS10业务系统和数据库服务的部署。RS10技术架构包括企业私有云架构的搭建,RS10作为一个云计算ERP产品部署在企业私有云基础架构上。企业私有云基础架构有效的整合了企业内的各项IT资源,RS10技术架构的WEB服务和数据库服务支持在企业私有云环境中的部署。对于已经搭建了私有云基础架构的大型集团企业,建议在私有云基础架构上部署RS10技术架构的WEB服务和数据库服务,充分利用企业私有云基础架构的计算能力。对于没有搭建私有云架构的企业,可以通过部署RS10私有云框架进行部署RS10的业务系统和分布式数据库服务。此时企业私有云基础架构以及部署在企业私有云基础架构上的WEB服务和数据库服务是RS10技术架构的平台层。
支持层:支持层是RS10技术架构的主要内容,包括云服务管理框架、基于云服务管理框架的业务元数据服务和业务流程引擎服务以及在此之上的用户认证和权限服务、信息推送服务、日志、搜索、报表等基本内置服务。
云服务管理框架支持企业私有云平台的部署,是基于企业私有云基础架构的对上层各种业务子系统服务以及各种内置服务进行统一管理的基础架构,并完成各业务子系统服务间的协同运作,实现各业务子系统服务之间的通信和整合。业务子系统服务的管理包括安装、卸载、更新、启动以及运行情况监控和动态配置等。RS10技术架构将提供服务配置管理的前台工具集合,用来帮助系统管理人员进行系统的日常维护。RS10系统将作为企业私有云基础架构上的云应用,充分发挥企业私有云基础架构的计算能力,为企业提供更稳定、高效的服务。主要功能如下:
服务基本管理功能:服务类型包括基本内置服务、应用层各子系统服务、客户化服务。基本管理功能包括服务安装、卸载、更新、启动以及运行情况监控和动态配置等,提供类似Websphere管理控制台的服务配置管理平台。
各服务间的通信:主要包括基本内置服务之间、应用层各子系统服务间、应用层对基本内置服务的调用、客户化服务对基本内置服务和应用层各子系统服务的调用。
分布式WEB服务器:在分布式WEB服务器上的部署以及分布式事物的支持(分布式事务是指操作多个数据库之间的事务),包括Websphere的分布式部署、Spring对分布式事物的支持、JTA(Java Transaction API)允许应用程序执行分布式事务处理——主要是在两个或多个网络计算机资源问并且更新数据的操作。
分布式数据库服务器:提供了存储数据的方法,使企业能够有效地管理存储在分布式系统中的数据。能够自动、准确、及时地分发和分析整个企业中的数据,主要实现针对oracle数据库的分布式部署。
私有云环境服务器部署:根据私有云环境架构的特点,实现WEB服务器和数据库服务的部署策略,主要使用Hadoop和Spring Hadoop技术等。
业务元数据服务和业务流程引擎服务是RS10新产品技术架构的两个关键服务:
1) 业务元数据服务定义了业务元数据模型、业务实体接口,并提供了各种管理服务,比如业务实体间的关联关系、版本信息、检索以及扩展信息等。业务元数据服务将为所有上层业务子系统服务提供数据支持,在整个产品架构层面整合所有纵向业务子系统中的业务数据。例如在业务元数据服务可定义单据的元数据模型,在业务子系统中实现具体的业务单据类型,比如采购订单、采购接收单、质检单、仓库的入库单、出库单等,在业务元数据服务中实现单据的关联关系,实现各种单据的关联,实现所采购物品的信息追踪。另外依托业务元数据服务更便于实现数据挖掘,有助于实现更加智能的BI系统。
2) 业务流程引擎服务是根据从传统业务系统中剥离出的业务流程规则,接收业务数据输入,解释业务流程规则并根据业务流程规则做出业务决策。业务流程引擎可有效提高复杂业务逻辑的代码的可维护性,可帮助业务人员直接管理IT系统中的规则,不需要开发人员的参与。对于RS10集团版ERP系统而言,有很多标准的业务流程和算法,这些流程和算法在产品实现中不提供自定义的业务规则,以保证企业业务的正确性和完整性。而对于非标准化的业务流程和算法则可以提供业务流程调整功能,帮助企业实现自己的业务流程。
内置服务是RS10技术架构中默认实现的基本服务类型。包括用户认证和权限服务、信息推送服务、日志、搜索以及报表服务等。内置服务类型作为支持层的一部分提供给应用层各业务子系统调用,应用层各业务子系统只需专注于业务逻辑的实现。内置服务可通过云服务管理框架进行管理,可像应用层各业务子系统服务一样进行扩展。内置服务的实现也可集成第三方的系统,比如报表服务即可使用第三方的报表服务器。
1) 应用层各业务子系统服务间的集成,这属于RS10内部子系统间的集成。根据项目需要选择需要集成的业务子系统进行安装,例如物流线各业务子系统之间进行集成安装。这些子系统既可以部署在同一台服务器上,完成传统的集中式的部署,也可以安装在不同的服务器上,实现企业私有云的部署。
2) RS10内部各业务子系统与第三方业务系统的集成。例如支持层提供的多种内置服务,其中报表服务可以采取集成第三方报表服务器的方式来实现。RS10新产品中各子系统需要用到内置报表服务的,只需直接调用内置报表服务的接口即可,无需修改程序,由云服务管理框架来完成对第三方报表服务器的访问。
3) 客户化应用服务与RS10各业务子系统服务以及多种内置服务的集成。客户化应用服务是指客户根据RS10技术架构开发的客户化应用,支持层的云服务管理框架支持对客户化应用服务的管理,客户化服务可使用支持层提供的各项内置服务以及RS10各子系统业务服务。
应用层:应用层包含所有业务子系统服务,依据支持层的业务元数据服务、业务流程引擎以及各种内置服务开发业务子系统服务,通过云服务管理框架对所有业务子系统服务进行管理。业务系统服务间的关联关系,在定义业务系统服务的时候进行声明,业务系统服务间的依赖关系由支持层的云服务管理框架统一管理。
应用层提供各种业务子系统服务,业务子系统客户端的类型包括:传统PC上的WEB应用、移动设备上的WEB应用、移动设备上的客户端应用、其他物联网智能终端等。在具体应用层业务子系统服务实现过程中,将酌情对RS10系统中的各业务子系统进行迁移。
RS10设计后端云服务架构如图所示。客户端发送请求到后端服务器,后端服务器中的请求控制器根据请求的类型(调用业务服务或打开功能页面)进行相应处理,如果是调用业务逻辑,则将处理交给OSGI容器处理,并将处理结果返回给客户端。
1) 划分业务子系统。RS10系统是一个庞大的业务系统集合,其可划分为多个业务子系统,将不同的子系统部署在不同的服务器上,实现私有云平台和分布式的部署,Controller根据URL将业务子系统区分以及读取分布式数据库的数据。
2) 路由请求类型。从客户端发送的WEB有两种:一种是调用后台业务服务的,一种是打开特定功能页面的。控制器根据请求类型的不同将请求转交给指定的服务处理。
3) 注册后端业务服务。后台的各种业务服务都注册在Controller上,由控制器根据请求类型来调用特定的服务完成业务操作。
1) 管理后端业务服务。所有的后端服务都将运行于OSGI容器中,包括支持层的基本内置服务和应用层的各子系统业务服务。管理后端业务服务包括:服务的启动、关闭、更新、卸载等,实现后台业务服务的生命周期管理。
2) 管理各服务之间的依赖关系。包括服务的创建以及服务在组件之间的引用、销毁等。避免服务之间的直接依赖,降低服务之间的耦合度。
3) 提供模块化、组件化的业务服务。业务服务都包含在特定的业务子系统模块中,以通用jar包的形式运行于OSGI容器。
1) 通过Controller控制器划分业务子系统,规范各业务功能模块的URL设计,对部署在不同服务器上的子系统根据业务请求进行处理,对计算资源和并发访问进行资源平衡,对私有云平台进行管理和操作,是私有云架构的核心实现部分。
4) 实现按照配置自动将支持层各内置服务和业务子系统的持续构建,即根据配置实现产品的持续集成。
本文首先介绍了RS10产品私有云架构,研究了私有云架构的技术和实现策略,最后介绍了RS10实现私有云架构的方式。通过在企业搭建私有云平台,实现企业私有云ERP的搭建和使用,利用分布式数据库,实现数据的分布存储,能够从根本上解决ERP高并发和海量数据的性能问题;通过部署云服务框架,能够有效管理企业资源的使用,实现资源平衡。RS10依托云架构部署各种应用,将满足企业多变的业务需求,高并发的访问量,海量的数据处理,真正实现公司制作效率的提高。