一种基于分布式集群架构的高可用软件开发集成平台制造技术

技术编号:36943509 阅读:58 留言:0更新日期:2023-03-22 19:05
本发明专利技术提供了一种基于分布式集群架构的高可用软件开发集成平台,包括分布式集群架构、报表集成、工作流集成;所述分布式集群架构包括应用、数据管理、日志系统、配置中心、自动部署、数据备份;所述报表集成采用JiMu Report技术,实现集成平台报表生成功能,满足业务需求中多源数据库的要求,通过使用数据库连接和AOP切面编程技术来实现数据源的动态切换;所述工作流集成采用Activiti技术,实现集成平台工作业务流程的可配置功能,根据所画流程图对应节点发起的表单会自动转到对应权限用户下,将表单html页面存到数据库,转到对应角色审批。通过以上架构的构建提供一种高可靠性、不中断服务、可持续化自动部署及监控运维的基于分布式集群架构的软件开发平台。分布式集群架构的软件开发平台。分布式集群架构的软件开发平台。

【技术实现步骤摘要】
一种基于分布式集群架构的高可用软件开发集成平台


[0001]本专利技术涉及一种智能软件开发平台的构建,具体是一种基于分布式集群架构的高可用软件开发集成平台。

技术介绍

[0002]随着智能制造的发展,传统生产制造企业纷纷引入信息管理系统,从供应链、库存、生产到售后,对产品实施全生命周期的监管,以便提高生产效率,节约生产成本。这对系统的开发在开发周期、开发流程、可持续化自动部署及监控运维提出了更高的要求。可靠性及可用性可持续性已经成为衡量一个系统优劣的重要方面。一个高可用的软件开发集成平台可以帮助企业在搭建系统基础架构,实现敏捷开发,集中资源、提高业务服务水平的同时降低运行成本。
[0003]目前传统的单一软件系统架构或平台主要存在以下几个方面的问题:(1)采用磁盘镜像、软件包备份等保障系统的可靠性和可用性。这些方法一般只适用于单一的服务器范围内,而对于分散在不同服务器的分布式系统却并不适用。(2)传统的数据库技术需要从数据库规划阶段就开始设计,实施配置周期较长,对于已建成运行的数据业务系统,如果要将单数据库服务器模式改造成数据库集群模式,需要较长时间的中断业务运行才能完成配置工作,这样对于数据实时性和服务持续性要求高的业务系统,将会造成无法挽回的后果。(3)传统的软件平台缺乏对业务的实时管控,对所有日志的实时采集及对系统的实时监控分析。

技术实现思路

[0004]为了解决上述技术问题,本专利技术提供一种基于分布式集群架构的高可用软件开发集成平台,包括分布式集群架构、报表集成、工作流集成;所述分布式集群架构包括应用、数据管理、日志系统、配置中心、自动部署、数据备份;所述报表集成采用JiMu Report技术,实现集成平台报表生成功能,满足业务需求中多源数据库的要求,通过使用数据库连接和AOP切面编程技术来实现数据源的动态切换;所述工作流集成采用Activiti技术,实现集成平台工作业务流程的可配置功能,根据所画流程图对应节点发起的表单会自动转到对应权限用户下,将表单html页面存到数据库,转到对应角色审批。
[0005]优选的,所述应用采用前后端分离技术,前端采用Vue+es6+Nodejs+Elementui作为独立的前端框架,路由守卫作为前端的权限管理;所述Vue是用于构建用户界面的渐进式框架;
[0006]所述es6是javaScript语言的标准;
[0007]所述Nodejs是应用程序框架,为运行环境,对于请求是异步的,几个请求可同时进行;
[0008]所述Elementui是基于Vue的后台组件库,方便开发人员进行页面快速布局和构建;
[0009]后端采用Springboot+Mybatis+SpringSecurity+JWT+SpringAOP+SpringIOC技术框架,能适配各种先进技术,支持集群、支持多数据源、支持分布式事务;所述Springboot技术框架提供各种默认配置来简化项目配置;
[0010]所述Mybatis是持久层框架,用来持久化数据,将数据存入数据库中和从数据库中取数据;
[0011]所述SpringSecurity是安全管理框架,为后端提供认证机制和方法级的授权功能,所述JWT用于用户登录鉴权,支持多终端认证系统;
[0012]所述SpringAOP用于对业务逻辑的各个部分进行隔离,使业务逻辑各部分之间的耦合度降低;
[0013]所述SpringIOC用来解决的对象管理和对象依赖的问题,将对象进行统一管理。
[0014]优选的,所述数据管理包括基本数据管理和大数据管理;
[0015]所述基本数据中非结构化数据通过NFS共享文件存储,安装组件nfs

utils、rpcbind,创建虚拟化网络共享服务器目录,设置好挂载点,用户通过HTTP网络请求即可存储到文件系统;
[0016]所述大数据管理采用分布式集群,包括ElasticSearch搜索引擎,实现数据高可用以及易拓展及快速检索;采用Kafka做消息队列来处理数据同步和解决数据负载问题。
[0017]优选的,所述日志系统采用完整ElasticSearch+Logstash+Kibana+Filebeat架构,所述Filebeat读取日志文件,并把获取到的日志发送给所述Logstash,所述Logstash将所有的日志过滤、清洗、拆分出来,并存入所述Elasticsearch集群,最后导入至所述Kibana,通过其可视化工具在Web前端通过图形、汇总等将日志展示给用户,满足大数据日志数据管理高效率处理及查看,方便运维开发人员进行错误排查。
[0018]优选的,所述配置中心采用集成分布式配置中心Spring cloud config,统一管理各个服务配置,实现配置中心化、服务化、配置热部署;所述Spring cloud config分服务端和客户端,配置文件存储在Git上;所述服务端用来连接配置服务器并为客户端提供获取配置信息,加密/解密信息等访问接口;所述客户端通过接口获取数据,并依据此数据初始化自己的应用;当配置修改后,通过消息总线通知各个服务,使其从配置中心拉取修改后的配置。
[0019]优选的,所述自动部署包括集群协调系统、分发负载机制、服务安全机制、自动化部署系统;所述集群协调系统包括后台监控系统、容错系统,通过k8s管理监控容器状态,对容器服务进行编排和自动替补;所述分发负载机制通过nginx负载策略,分发前后端请求到不同服务器,达到负载抗压效果;所述服务安全机制通过反向代理技术,隐匿服务真实IP地址,防止攻击,并使用Lua语言,对文件资源进行安全访问防护;所述自动化部署系统通过集成Docker/Jenkins/Shell脚本,实时监控远程Git仓库代码变化,自动打包、编译、部署,及发布前后端指定分支代码,到指定版本指定环境,开发人员提交代码后自动执行,实现持续开发,持续集成,持续部署。
[0020]优选的,所述数据备份采用快照备份,自动备份自动恢复,共享文件系统挂载备份、定时脚本备份,缓存数据库Redis采用RDB和AOF冷热备份,Mysql数据库采用SCP远程备份。
附图说明
[0021]本专利技术有如下附图:
[0022]图1高可用软件开发集成平台分布式集群系统架构;
[0023]图2配置中心工作流程图。
具体实施方式
[0024]以下结合附图1

2对本专利技术作进一步详细说明。
[0025]本专利技术提供了一种基于分布式集群架构的高可用软件开发集成平台主要包括分布式集群架构、报表集成、工作流集成。
[0026]分布式集群架构包括应用、数据管理、日志管理、配置中心、自动部署、数据备份六个部分。
[0027]应用采用前后端分离技术,前端采用Vue+es6+Nodejs+Elementui作为独立的前端框架,路由守卫作为前端的权限管理。其中Vue是用于构建用户界面的渐进式框架;es6全称ECMAScript,是j本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于分布式集群架构的高可用软件开发集成平台,其特征在于,包括分布式集群架构、报表集成、工作流集成;所述分布式集群架构包括应用、数据管理、日志系统、配置中心、自动部署、数据备份;所述报表集成采用JiMu Report技术,实现集成平台报表生成功能,满足业务需求中多源数据库的要求,通过使用数据库连接和AOP切面编程技术来实现数据源的动态切换;所述工作流集成采用Activiti技术,实现集成平台工作业务流程的可配置功能,根据所画流程图对应节点发起的表单会自动转到对应权限用户下,将表单html页面存到数据库,转到对应角色审批。2.如权利要求1所述一种基于分布式集群架构的高可用软件开发集成平台,其特征在于,所述应用采用前后端分离技术,前端采用Vue+es6+Nodejs+Elementui作为独立的前端框架,路由守卫作为前端的权限管理;所述Vue是用于构建用户界面的渐进式框架;所述es6是javaScript语言的标准;所述Nodejs是应用程序框架,为运行环境,对于请求是异步的,几个请求能同时进行;所述Elementui是基于Vue的后台组件库,方便开发人员进行页面快速布局和构建;后端采用Springboot+Mybatis+SpringSecurity+JWT+SpringAOP+SpringIOC技术框架,能适配各种先进技术,支持集群、支持多数据源、支持分布式事务;所述Springboot技术框架提供各种默认配置来简化项目配置;所述Mybatis是持久层框架,用来持久化数据,将数据存入数据库中和从数据库中取数据;所述SpringSecurity是安全管理框架,为后端提供认证机制和方法级的授权功能,所述JWT用于用户登录鉴权,支持多终端认证系统;所述SpringAOP用于对业务逻辑的各个部分进行隔离,使业务逻辑各部分之间的耦合度降低;所述SpringIOC用来解决的对象管理和对象依赖的问题,将对象进行统一管理。3.如权利要求1所述一种基于分布式集群架构的高可用软件开发集成平台,其特征在于,所述数据管理包括基本数据管理和大数据管理;所述基本数据中非结构化数据通过NFS共享文件存储,安装组件nfs

utils、rpcbind,创建虚拟化网络共享服务器目录,设置好挂载点,用户通过HTTP网络请求即可存储到文件系统;所述大数据管理采用分布式集群,包括ElasticSearch搜索引擎,实现数据高可用以...

【专利技术属性】
技术研发人员:刘西锋张挺王博
申请(专利权)人:北京京仪仪器仪表研究总院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1