开发现场 - 接口平台讨论

146 阅读3分钟

“南哥,和我去会议室聊聊吧。”

南哥一手拿着茶杯,正聚精会神地看着需求文档。听到身后的声音后,抬手锁掉电脑,和阿哲一起来到会议室。

“最近需求有点多啊,都看不过来了。”南哥扭了扭脖子,吐槽了一句。

“先不说这个。”阿哲不接他的吐槽:“你看我们目前的服务架构,很大一部分还是根据需求来定制的。来一个需求,就做一套接口。”

“和其他服务的对接,基本上也是一对一进行开发。这样增加了业务之间的耦合性,不利于我们之后的整体规划。

我想对这块做下架构升级,系统性地提升我们的服务能力。”

“我想听听你的建议。”

阿哲说完以后,笑着看向南哥。

“嗯,我捋一下,最近脑子有点儿不好使。”南哥摘下眼镜,从会议桌上抽了一片纸巾,反复的擦着。

“现在我们的服务比较分散,同时开展了多个业务线。存在的主要问题就是接口本身的管控和治理,没有一个统一 的治理中心。”

“下一个阶段,我们可能需要实现内部所有接口的统一接入、开通、授、日志监控和问题排查等。”

南哥想了想,走到会议室的写字板,画了几个示意图,继续说到。

“从原先点对点的小规模集成模式,变成基于平台、解耦的模式。因为点对点的方式,接口很难复用,也难以维护。”

“转换到平台模式以后,所有的业务系统之间,都不直接交互。而是通过注册的方式接入到平台,再由集成平台开放一个统一的接口服务域名,供外部系统调用。”

阿哲对这点表示认可,下意识的点了点头:“嗯,我们下一步应该是朝这个方向发展。”

“接口平台实施完成以后,有下一步的计划吗?”阿哲继续说到。

南哥对这块颇有研究,阿哲的提问仿佛是进一步触碰到了他的心尖尖儿上:“姑且称平台化模式为第二阶段吧,对于第三阶段的畅想,目前的技术圈比较主流的看法是OpenAPI。”

“这种架构关注的是服务能力的外放,而不是针对功能性需求,换个说法,会更多的考虑主动暴露哪些能力出去。”

“第二阶段接口平台的服务注册和消费,这两个过程是耦合在一起的,有了业务需求,才会去做功能实现,然后提供给外部系统消费。”

“而到了第三阶段,服务接入和消费的两个过程是解耦的,也就是说即使没有消费方的情况下,接口也可以先接入进去。而各个业务系统可以随时查看服务目录,组合目录中的服务定制相应的业务。”

“到了这个阶段,需要定制更为详尽的规范和标准,方便各种服务接入,扩充服务目录,提升能力范围。”

说完,南哥拿起桌上的矿泉水,一口气喝了半瓶。

阿哲看着会议室写字板上的示意图,若有所思。