第二章体系架构第一节发展史作为一款企业级......《企业数字化创新引擎》摘录

管理类 日期 2022-09-08
第二章 HZERO体系架构

第一节 HZERO发展史

HZERO作为一款企业级数字化PaaS,是汉得信息多年来研究和实践的结晶。其历史可追溯至2015年年初,具体发展史如图2-1所示。HZERO体系架构如图2-2所示。

图2-2 HZERO体系架构第二章 HZERO体系架构

第一节 HZERO发展史

HZERO作为一款企业级数字化PaaS,是汉得信息多年来研究和实践的结晶。其历史可追溯至2015年年初,具体发展史如图2-1所示。HZERO体系架构如图2-2所示。

图2-2 HZERO体系架构在传统ERP实施过程中,汉得信息面对大量的外围需求,使用ERP本身的开发工具,其灵活性和开发效率难以满足项目交付要求,另外各个项目使用的技术框架不一,不利于知识的积累和复用。经过大量客制化项目开发的经验积累,汉得信息为统一技术栈,降低项目交付成本,基于Sprig MVC的单体架构的HAP 1.0 版本于2015年1月问世。经过迭代后的HAP 2.0,在汉得信息自主研发的产品和外部实施项目中,被广泛推广和使用。后面由于车联网项目微服务的需求,于2017年1月衍生出分布式架构HAP Cloud版本。

在HAP1.0的基础上,为响应项目上移动端开发框架需求,前端基于Agela UI、后端使用HAP1.0、半原生移动端开发框架海马汇1.0版本,于2017年6月开始发布,后续又推出基于HAP 2.0后端、VUE前端框架的组件化海马汇2.0版本,直到目前后端使用HZERO架构的当前海马汇3.0版本。

在汉得信息自主产品研发项目和基于HAP框架的纯开发项目中,面临着提高软件交付质量和效率的挑战,在此背景下,基于微服务架构的全价值链多云敏捷协作平台——猪齿鱼(Choerodo)开始推出。猪齿鱼采用 DevOps 的原则和敏捷模型来管理软件的开发与运维,帮助企业实现敏捷化的应用交付和自动化的运营管理。2018年5月,猪齿鱼宣布开源。

随着业务的全面纵深发展,HAP架构已经无法满足市场精细化需求,如动态资源扩展,整合云服务和应用生态API服务,如海量算力、图像识别、语义识别、信用判定、流量导入、电子发票等,为响应市场需求,汉得于2018年7月正式推出混合云架构HZERO。2020年2月,汉得信息董事会决定将构建HZERO生态作为公司战略,并决定采用发行可转债的方式募集专项资金以支持研发。开源版混合云架构HZERO于2020年9月23日正式对外发布。本书将在第四章介绍如何部署HZERO开源版。在传统ERP实施过程中,汉得信息面对大量的外围需求,使用ERP本身的开发工具,其灵活性和开发效率难以满足项目交付要求,另外各个项目使用的技术框架不一,不利于知识的积累和复用。经过大量客制化项目开发的经验积累,汉得信息为统一技术栈,降低项目交付成本,基于Sprig MVC的单体架构的HAP 1.0 版本于2015年1月问世。经过迭代后的HAP 2.0,在汉得信息自主研发的产品和外部实施项目中,被广泛推广和使用。后面由于车联网项目微服务的需求,于2017年1月衍生出分布式架构HAP Cloud版本。

在HAP1.0的基础上,为响应项目上移动端开发框架需求,前端基于Agela UI、后端使用HAP1.0、半原生移动端开发框架海马汇1.0版本,于2017年6月开始发布,后续又推出基于HAP 2.0后端、VUE前端框架的组件化海马汇2.0版本,直到目前后端使用HZERO架构的当前海马汇3.0版本。

在汉得信息自主产品研发项目和基于HAP框架的纯开发项目中,面临着提高软件交付质量和效率的挑战,在此背景下,基于微服务架构的全价值链多云敏捷协作平台——猪齿鱼(Choerodo)开始推出。猪齿鱼采用 DevOps 的原则和敏捷模型来管理软件的开发与运维,帮助企业实现敏捷化的应用交付和自动化的运营管理。2018年5月,猪齿鱼宣布开源。

随着业务的全面纵深发展,HAP架构已经无法满足市场精细化需求,如动态资源扩展,整合云服务和应用生态API服务,如海量算力、图像识别、语义识别、信用判定、流量导入、电子发票等,为响应市场需求,汉得于2018年7月正式推出混合云架构HZERO。2020年2月,汉得信息董事会决定将构建HZERO生态作为公司战略,并决定采用发行可转债的方式募集专项资金以支持研发。开源版混合云架构HZERO于2020年9月23日正式对外发布。本书将在第四章介绍如何部署HZERO开源版。第二节 HZERO架构

本节从“功能架构”与“微服务架构”两个维度,对HZERO架构做概要说明。

一、功能架构

HZERO采用 J2EE 技术体系,基于Sprig Cloud微服务框架进行封装,平台设计灵活,可扩展、可移植、可应对高并发需求。同时兼顾本地化、私有云、公有云部署,支持SaaS模式应用,具体如图2-3所示。

图2-3 HZERO 功能架构

(1)基础服务:包括平台应用基础和服务治理两部分,是平台底层应用的基础服务,是一个微服务系统运行所必要的组件服务。平台提供较好的兼容性,可根据需要选择不同的基础组件,如注册中心、第二节 HZERO架构

本节从“功能架构”与“微服务架构”两个维度,对HZERO架构做概要说明。

一、功能架构

HZERO采用 J2EE 技术体系,基于Sprig Cloud微服务框架进行封装,平台设计灵活,可扩展、可移植、可应对高并发需求。同时兼顾本地化、私有云、公有云部署,支持SaaS模式应用,具体如图2-3所示。

图2-3 HZERO 功能架构

(1)基础服务:包括平台应用基础和服务治理两部分,是平台底层应用的基础服务,是一个微服务系统运行所必要的组件服务。平台提供较好的兼容性,可根据需要选择不同的基础组件,如注册中心、配置中心、分布式事务等,并能很好地适配阿里云EDAS、百度CNAP等公有云平台。

①认证服务:基于 Sprig Security、Sprig OAuth2、JWT实现的统一认证服务中心,登录基于Sprig Security的标准登录系统。Web端采用简化模式(implicit)登录系统,移动端可使用密码模式(password)登录系统,并支持基于 Sprig Social 的三方账号登录方式(如微信)。

②身份管理服务:权限管理服务,平台统一的权限体系架构,主要提供租户、角色、菜单、账户、单据数据权限等管理功能。

③网关服务:基于Sprig Cloud Gateway的微服务网关服务,主要提供服务的路由、API鉴权、Toke转JWT等功能。

④接口文档服务:基于Swagger拓展的API文档服务,主要提供在平台开发阶段的API文档管理和API调试等功能。

⑤注册中心服务:基于Eureka的平台注册中心服务,主要提供服务的注册发现等功能。

⑥配置中心服务:基于Sprig Cloud Cofig改造的配置中心服务,主要提供服务的统一配置管理、服务路由、熔断限流等管理功能。

⑦平台治理服务:提供HZERO通用基础功能,主要涵盖平台开发支持模块、平台主数据模块、系统管理模块等;提供客户端组件,使开发者能够迅速、便捷地使用平台服务提供的功能,如值集、编码规则、配置、规则引擎、数据源管理等。

(2)辅助开发包:主要针对开发人员进行技术开发支持,提供一系列通用的开发工具包,定义了基础工具类,如配置、缓存、消息、配置中心、分布式事务等,并能很好地适配阿里云EDAS、百度CNAP等公有云平台。

①认证服务:基于 Sprig Security、Sprig OAuth2、JWT实现的统一认证服务中心,登录基于Sprig Security的标准登录系统。Web端采用简化模式(implicit)登录系统,移动端可使用密码模式(password)登录系统,并支持基于 Sprig Social 的三方账号登录方式(如微信)。

②身份管理服务:权限管理服务,平台统一的权限体系架构,主要提供租户、角色、菜单、账户、单据数据权限等管理功能。

③网关服务:基于Sprig Cloud Gateway的微服务网关服务,主要提供服务的路由、API鉴权、Toke转JWT等功能。

④接口文档服务:基于Swagger拓展的API文档服务,主要提供在平台开发阶段的API文档管理和API调试等功能。

⑤注册中心服务:基于Eureka的平台注册中心服务,主要提供服务的注册发现等功能。

⑥配置中心服务:基于Sprig Cloud Cofig改造的配置中心服务,主要提供服务的统一配置管理、服务路由、熔断限流等管理功能。

⑦平台治理服务:提供HZERO通用基础功能,主要涵盖平台开发支持模块、平台主数据模块、系统管理模块等;提供客户端组件,使开发者能够迅速、便捷地使用平台服务提供的功能,如值集、编码规则、配置、规则引擎、数据源管理等。

(2)辅助开发包:主要针对开发人员进行技术开发支持,提供一系列通用的开发工具包,定义了基础工具类,如配置、缓存、消息、图形验证码等工具,减少开发人员重复造轮子,帮助提高代码编写效率。

(3)开发组件:主要包含通用的Starter组件,如Excel导入导出、数据防篡改等,另外包含服务客户端组件,便于技术开发过程中,快速使用通用服务提供的能力。

①Mybatis增强组件:增强ORM框架Mybatis的数据库DML处理能力,支持分页,支持数据多语言、基于对象的CURD编写、数据防篡改、数据加密解密等功能。

②数据导出组件:基于Apache POI 4.0.0开发,使用SXSSF支持大数据量导出,导出格式为xlsx。在项目中只需依赖该jar包,再结合三个注解即可完成数据的导出。对于导出Excel样式,提供了两种默认实现,同时支持自定义导出样式。

③分布式锁组件:基于Redisso开发,开发中可以通过注解的方式进行分布式锁控制,使项目进行分布式锁变得非常简单。

④长连接组件:支持前端websocket和sock-js两种连接方式,用于后端的主动消息推送等场景。

⑤Redis操作组件:统一封装常用的Redis操作功能,使得在系统开发中操作Redis变得更加简单。

⑥三方登录组件:基于Sprig Social开发,使系统通过配置的方式,快速地与微信、微博等开发平台进行整合,实现系统账户绑定、账户登录等功能。

(4)通用服务:主要指平台中已包含的开发业务系统所需要的基础服务,如分布式调度、消息、权限、文档、支付管理等,能快速图形验证码等工具,减少开发人员重复造轮子,帮助提高代码编写效率。

(3)开发组件:主要包含通用的Starter组件,如Excel导入导出、数据防篡改等,另外包含服务客户端组件,便于技术开发过程中,快速使用通用服务提供的能力。

①Mybatis增强组件:增强ORM框架Mybatis的数据库DML处理能力,支持分页,支持数据多语言、基于对象的CURD编写、数据防篡改、数据加密解密等功能。

②数据导出组件:基于Apache POI 4.0.0开发,使用SXSSF支持大数据量导出,导出格式为xlsx。在项目中只需依赖该jar包,再结合三个注解即可完成数据的导出。对于导出Excel样式,提供了两种默认实现,同时支持自定义导出样式。

③分布式锁组件:基于Redisso开发,开发中可以通过注解的方式进行分布式锁控制,使项目进行分布式锁变得非常简单。

④长连接组件:支持前端websocket和sock-js两种连接方式,用于后端的主动消息推送等场景。

⑤Redis操作组件:统一封装常用的Redis操作功能,使得在系统开发中操作Redis变得更加简单。

⑥三方登录组件:基于Sprig Social开发,使系统通过配置的方式,快速地与微信、微博等开发平台进行整合,实现系统账户绑定、账户登录等功能。

(4)通用服务:主要指平台中已包含的开发业务系统所需要的基础服务,如分布式调度、消息、权限、文档、支付管理等,能快速

声明:部分内容来自互联网,如侵权请联系删除!
友情:思诺速记

相关推荐

管理类 / 日期:2024-03-11
理解那个东西,但是我已经发现,他的信息距离和我越来越近了。因为他不再看《舟山晚报》,我也不再看《新民晚报》了,我们看的都是腾讯新闻App,看新闻头条,他也看我的朋友圈。所以信息高速一旦被打通了,一、二线和三、四线城市之间的认知壁垒也逐渐被打破了。要掌握70%~80%的都市消费,其实就是掌握两亿中产阶层。像分众这样的公司,之所以能够覆盖78%有家庭汽车的、80
管理类 / 日期:2024-03-11
实现资产最大限度的增值。一些合伙人可以通过“股权转让”等资产重组方式退出。二、退出如何结算当合伙人退出公司后,其所持的股权应该按照一定的形式退出。一方面对于继续在公司里做事的其他合伙人更公平;另一方面也便于公司的持续稳定发展。而合伙人退出之后,如何结算也是一个问题。一般采用三种方法:估值法、参考相关法律、另外约定。估值法,即当合伙人中途退出,退出时公司可以按
管理类 / 日期:2022-09-08
管理者不只通过知识、能力和技巧来领导部属,同时也通过愿景、勇气、责任感和诚实正直的品格来领导。无论管理者接受的是通才教育或管理教育,由于将来情况将会与过去的情况不一样,在将来最起决定性作用的既不是教育,也不是技能,而是一个人诚实正直的品格。管理者不只通过知识、能力和技巧来领导部属,同时也通过愿景、勇气、责任感和诚实正直的品格来领导。无论管理者接受的是通才教育
管理类 / 日期:2022-09-08
而股份公司就不存在这种担心。为什么呢?有限公司股东会表决,计算通过比例是以全体表决权为计算基数。也就是说,有限公司通知开会,如果来参会的股东所持表决权达不到法定比例,二分之一或者三分之二,你的会就没法开,聊天可以,事情决定不了。股份公司通知开会,不论来参会的股东持多少表决权,都不影响正常开会。因为法律规定,股份公司计算通过比例是以出席会议的股东所持表决权为计

推荐列表

热门标签