交易中台架构设计:海量并发高扩展,新业务秒级接入( 三 )


搞清楚之后 , 我们做中台就比较简单了 , 也就是说 , 取决于能不能在业务层面将公共能力下沉为服务 , 并做好服务连接 。
怎么理解呢?
比如说 , 像网关层、公共的业务逻辑层等 , 你应该把它抽象出来 , 做为一个独立的服务来执行 。 这是我们在整体的思路上需要去沉淀的 。
那么下沉为服务后 , 服务连接要怎么去做呢?我们接下来花点时间讲讲这块儿 。
比如转转 , 里面有些怎样的业务呢?因为它是转卖的二手商品 , 所以就会有C2C(个人对个人)、B2C(商家对个人)、C2B(个人对商家)各种不同的商品模式 , 会有很多不同的业务 。
交易中台架构设计:海量并发高扩展,新业务秒级接入
本文插图

图3
在这些业务里面 , 不论是C2C、B2C还是C2B , 这几种业务模式里面都一定会有些公共的业务逻辑 , 也一定会有个性化的部分 。 个性化的东西 , 比如你是C2C的 , 有C2C的业务逻辑层;B2C的 , 有B2C的业务逻辑层;C2B的有C2B的业务逻辑层 , 那么这时我们在沉淀中台的时候 , 就将公共的东西抽出来 , 变成我们的业务中台 , 这个是我们实际过程中在做的一个事儿 。
刚才说到了 , 我们在实现中台架构的时候 , 其实就是实现了微服务架构 , 里面网关、公共逻辑层、数据访问层属于业务中台 。 但是业务逻辑层 , 很显然 , 它是个性化的 , 属于小前台 。 我们重点聚焦的就是业务中台的范畴可以怎么去做 , 也就是将公共能力下沉为服务 。
交易中台架构设计:海量并发高扩展,新业务秒级接入
本文插图

图4
另外一块 , 业务中台可能会有很多 , 比如说商品、交易、搜索、推荐……确实 , 如果我的前台业务 , 比如说新做了一个业务线 , 怎样才能让它一键接入呢?这个对我们来说也是一个比较有意思的事情 。
大家可以看这个图 , 一起想想看:
交易中台架构设计:海量并发高扩展,新业务秒级接入
本文插图

图5
图中右边部分 , 使我们整个的一个中台 , 比如说商品中心、用户中心、交易中心、搜索中心等等 , 还有很多的一些其他的事情 , 也可以去做 。 在这种情况下 , 有这么多的中台需要接入 , 当我如果真的需要接入一个小前台的时候 , 难道这些中心我都要一个一个接入吗?
很显然 , 对我们来说太麻烦了 。 我们希望怎样?
我们希望 , 一个业务 , 首先能够给我分配一个ID , 比如是1 , 就将这个业务注册为业务中心的1号 , 注册完后 , 接下来我对这个业务的标识就都会通过这个ID来做 。 当然这个ID有可能是一个ID , 也有可能是一个三级ID 。 比如说一级类 , 二级类 , 三级类……
那在这种情况下 , 大家可以想一个问题:你现在已经对这个业务做好一个标识了 , 那接下来这个业务需要哪些中台的能力呢?
你需要做什么?你需要做一个配置 。
那这个配置配的是什么呢?
举个例子 , 就是把你这个业务需要的中台 , 比如要接入商品中心、搜索中心 , 接下来要做的的事情就是把ID和搜索中心构建起来就好了 , 你需要在配置中心里配置一下你前台所需要接入的中台 。
【交易中台架构设计:海量并发高扩展,新业务秒级接入】配置完以后会有一个接入策略 , 也就是以什么方式进行接入 , 比方说商品要接入到搜索 , 需要告诉我搜索在接入时要提供哪些字段可建索引、哪些字段不能建索引 。 首先对业务进行标识以后 , 业务要接入哪些中台需要有个配置 , 配置完后业务要怎么接入需要有个接入策略 , 这样当我要发布一个商品的时候 , 把商品推到搜索中心 , 搜索中心拿到商品后按照配置规则就会知道哪些字段可建索引、哪些字段不可建索引 , 最终把整个事情构建起来 。 因此构建这样一套接入体系很重要 。


推荐阅读