本文主要是介绍中台背景下的多端自适应的业务扩展模型架构实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
随着数字化变革的持续深入和中台战略的落地,越来来越多的最佳实践涌现出来,这里我不在赘述什么是数字化转型和什么是中台,这里我分享一下我们在中台建设中的一些顶层思考和实践。在中台规划之前中我一直在思考该如何应对业务的演进及不确定性,很遗憾至今我仍旧没有找到我满意的答案。在中台建设中的关键的方法是分割业务的确定性和不确定性,即封装确定性沉淀为中台化的共享服务能力,隔离不确定性通过扩展能力或扩展方式使其具备演化的能力。简而言之就是业务的内含与外延的动态演变。
一、核心思想
如果要把现实的物理世界映射到计算机的数字化世界就需要建立模型去承载物理世界的信息,往往我们设计的模型只涵盖了具备确定性的业务,对于那些外延性或不确定性的业务,业务模型往往不支持扩展或兼容。那么我们能不能通过某种方式让已有的业务模型具备不确定性业务的扩展方式呢?答案是肯定的,很庆幸我和我们团队在业务中台建设的道路上找到了确定性业务VS不确定性业务模型的封装和隔离的策略及不确定性业务的扩展方式(见图1确定性业务和不确定业务的封装扩展方式)。
图1 确定性业务和不确定业务的封装扩展方式
二、落地实践
1.元数据模板引擎
业务扩展模型元数据字段管理:
面向对象编程的过程就是把真实的物理事件通过建模映射在对象模型之中,其关键就是对象属性的定义。通过上述两个动作,任何不确定性业务抽象出来的属性都可以通过字段管理进行定义和描述。
1 在中台规划中我们基于层设计规划和定义了数据所属的类目;
2 基于可视化的操作界面定义业务模型需要的属性和字段;
业务扩展模型元数据模板管理:
有了可以动态编辑和定义业务模型属性的地方,我们还需要通过某种方式对业务模型的字段或属性进行编排,那可视化的编排视图将使这种模型编排变成可能。我们的做法如下
1 通过可视化的界面定义和编排不确定性业务的属性,我们从抽象定义出来的属性库中选取我们需要的属性构建成我们的元数据模板如图2所示;
2 通过构建把元数据模板编排的字段转换成我们的业务扩展模型代码并存入库并如图3所示;
图2 元数据模板字段编排
图3 元数据模板
业务扩展模型代码生成:
1.获取元数据模板的字段
2.构建元数据模板
3.生成java类
4.把Java类数据存入到模板中
2.业务扩展共享模型库动态加载
业务中台应用运行态热加载业务扩展模型:
核心思想是通过业务能力扩展框架在模型发布后通过事件触发热加载机制从maven仓库中拉取最新的共享业务模型构建包,动态加载到运行区。这里可能有人问,是怎么加载的。具体的实现细节请关注我微信公众号“架构微学堂”
总结
以上就是今天要讲的内容,本文仅仅简单介绍了业务扩展模型设计思路及定义过程,具体的使用将在下一篇为您呈现。
这篇关于中台背景下的多端自适应的业务扩展模型架构实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!