BPAAS化相关概念

1.领域

将不同的内容划分到不同的领域模型内,进行一个更清晰的划分。例如:商品域、门店域、活动域。

2.子域

领域是一个相对大的概念,比如商品域,其实涵盖了特别多的东西,而子域是对领域的一种细化。比如这里的商品域可以划分为多个子域:sku域、spu域、门店商品域、商品分类域。

3.领域服务

领域服务其实是对各种域对外的接口,一般我们会分为读服务和写服务。例如商品域的领域服务,里面可以有新建商品领域服务、修改商品领域服务、删除商品领域服务以及查询商品领域服务等等。

4.领域能力

领域能力是一个组成领域服务的分子,比如新建商品的领域服务内,可能会有新建参数校验领域能力、重复性校验领域能力、业务参数校验领域能力,新建商品领域能力、商品变动后操作其他相关数据的领域能力等等组成。

而这些领域能力都可以被拆分出来,通过不同的组合变为新的领域服务,或者说领域服务是由开发人员自由组合,最终构建成一个适合的服务进行提供。

5.扩展点

领域能力是由一个扩展点实现的,扩展点的参数、名称是固定的,就类似于接口和实现类的关系。

不同的点在于,一个能力可能有多个扩展点实现,我们可以根据一个业务身份来判断这一次的请求会进入哪一个扩展点实现。举一个例子,线下门店最常见的例子是部分租户的定制化需求,我们可以根据不同的业务身份(这块由框架去实现,比如配置文件与扩展点的绑定关系),走不同的扩展点,这样就能实现更丰富的组合。

6.节点

节点一般对应一个领域能力,即配置这个节点时,就会走某一个领域能力。比如我们可以配置一个checkGoodsParamNode(校验商品参数节点),只需要在编排时把这个node加入,对应的领域能力的代码就会覆盖到,避免重复的开发某些代码。

7.流程编排

前面说到节点,流程编排就是将节点的一种组合,定义一种flow,里面涵盖一个或者多个node,进行一个组合。这里可以有串行执行,或者是并行,或者一部分串行一部分并行。这种就可以由框架去实现,来达到合理利用资源的目的。

8.业务身份

这里就是前面提到的类似租户的身份,可能在其他系统类型下不是租户,但是也是类似的概念。因为某些细小的差异性,进而有不同的流程编排、不同的扩展点实现,从而实现偏定制化的需求。

9.基础设施层

主要为一些中间件(例如es、redis、db等等)、rpc。

10.核心包

前面说到的流程编排、节点、领域服务、领域能力、bo、dto等等的定义就会放在里面。

11.水平包

水平包是扩展点的实现,偏向于业务类的代码就会在里面

12.垂直包

与水平包功能基本类似,不同点在于水平包是偏向于通用的实现,而垂直包是定制化的实现方式。可以简单的理解为垂直包内的实现是更定制化一些,基本除了这个身份,其他人用不上。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值