摘要
针对软件即服务(SaaS)层应用采用单体架构方案时开发难度高、耦合性强、扩展性和可维护性差的问题,设计了一种由工作流引擎驱动业务流程的基于微服务架构的SaaS层云管平台(CMP)。基于工作流核心设计模型和微服务开发框架Spring Cloud,设计了基于微服务的工作流组件结构模型,由组件内工作流引擎(Activiti)驱动CMP业务流程;根据工作流引擎API封装模式提出面向业务流程的微服务组件间RESTAPI设计方案、流程节点自由跳转算法以及命令查询职责分离(CQRS)模式数据操作方案。以面向OpenStack的云资源调度为具体应用场景,每个微服务组件的业务功能均可被独立设计开发,工作流组件将解耦的业务组件串联,驱动完成完整的业务流程,验证了REST API与流程节点自由跳转,以及CQRS模式数据操作的可行性。
For software-as-a-service(SaaS) layer applications,it is difficult to develop with high coupling,poor scalability and poor maintainability when adopting a single architecture scheme. A SaaS layer cloud management platform(CMP) application based on micro-service architecture is designed,which is driven by workflow engine. Based on the workflow core design model and micro-service development frame (Spring Cloud),the workflow component structure model based on the micro-service is designed,and the CMP business process is driven by the in-component workflow engine(Activiti). According to the encapsulation mode of workflow engine API,the REST API design scheme among micro-service components for business processes,the free jump algorithm of process nodes and the data operation scheme of command query responsibility segregation (CQRS) mode are proposed. Taking OpenStack oriented cloud resource scheduling as a specific application scenario,the business functions of each micro-service component can be independently designed and developed. Workflow components connect decoupled business components in series and drive the complete business process to verify the feasibility of REST API and process node free jump as well as CQRS mode data operation.
作者
罗钦凯
倪成章
LUO Qin-kai;NI Cheng-zhang(Huazhong University of Science and Technology,Wuhan 430074,China;Wuhan Research Institute of Posts and Telecommunications,Wuhan 430074,China)
出处
《计算机技术与发展》
2019年第9期122-127,共6页
Computer Technology and Development
基金
中央高校基本科研业务费资助:HUST(2018JYCXJJ052)
关键词
工作流
微服务
云管平台
持续集成
可扩展性
敏捷开发
workflow
micro-service
cloud management platform
continuous integration
expandability
agile development