什么是核心链路
- 系统中最重要的业务流程,比如电商系统的下单流程;
- 核心链路的代码实现,往往业务逻辑非常复杂;
注:互联网应用很少会使用Spring Cloud做技术框架,因为基于HTTP的底层性能跟RPC是有差距的
核心链路的代码要如何实现?
- 传统的完全解耦方式,每新增加一种服务,就新写一套代码,工作量要大,但每个服务之间没有耦合关系,独立的变动更灵活;
- 模板模式,抽象出公共的逻辑,每新增加一种服务,就继承自模板,代码量小,但每个服务和抽象的逻辑耦合太大,如果抽象的逻辑变了,所有的服务都要改变;
更好的核心链路代码实现方案
- 寻找更好的框架帮助编码,把核心链路进行中台化,这种方法最先由阿里提出;
更好的框架
- 有限状态机框架,例如Spring-StateMachine;
- 使用Disruptor;