# 《高性能Polaris网关》通用模型-第05节:调用链路顶层接口的实现类设计

作者:冰河
星球:http://m6z.cn/6aeFbs (opens new window)
博客:https://binghe.gitcode.host (opens new window)
文章汇总:https://binghe.gitcode.host/md/all/all.html (opens new window)
源码获取地址:https://t.zsxq.com/0dhvFs5oR (opens new window)

沉淀,成长,突破,帮助他人,成就自我。

  • 本章难度:★★☆☆☆
  • 本节重点:对高性能Polaris网关的调用链路的顶层接口实现类进行设计,从全局角度掌握高性能Polaris网关整体调用链路的核心链路设计。重点掌握整体调用链路的设计思路和设计方法,并能够将其灵活应用到自身实际项目中。

大家好,我是冰河~~

从开始设计网关项目时,就明确了一个核心要点:那就是网关必须是高性能的。所以,在网关的整体设计和实现过程中,会仅仅围绕着如何进行架构设计,如何编码才能在设计和编码阶段使得网关的性能达到最优化。另外,在网关压测阶段,还会对网关的性能进行调优。

# 一、前言

在前面的章节中,已经对高性能Polaris网关的请求与响应模型的顶层接口进行了设计,对请求模型和响应模型的顶层接口进行了实现,随后对调用链路的顶层接口与抽象类进行了设计。接下来,就对调用链路的顶层接口实现类进行设计。

# 二、本节诉求

对高性能Polaris网关的调用链路的顶层接口实现类进行设计,从全局角度掌握高性能Polaris网关整体调用链路的核心链路设计。重点掌握整体调用链路的设计思路和设计方法,并能够将其灵活应用到自身实际项目中。

# 三、顶层实现类设计

调用链路顶层接口实现类设计如图5-1所示。


可以看到,在设计顶层实现类时,我们会为AbstractServiceInvoker类设计三个实现类,分别为HttpServiceInvoker类、RpcServiceInvoker类和WebSocketServiceInvoker类。其中,HttpServiceInvoker类是调用HTTP服务的类,RpcServiceInvoker类是调用RPC服务的类,WebSocketServiceInvoker类是调用WebSocket服务的类。

# 四、编码实现

接下来,就对调用链路顶层接口的实现类进行编码实现。

(1)实现HttpServiceInvoker类

HttpServiceInvoker类是调用HTTP服务的类。

源码详见:polaris-context工程下的io.binghe.polaris.context.invoker.HttpServiceInvoker。

# 查看完整文章

加入冰河技术 (opens new window)知识星球,解锁完整技术文章、小册、视频与完整代码