Spring Cloud OkHttp设计原理
Spring Cloud 框架最底层核心的组件就是服务调用方式,一般Spring Cloud框架采用的是HTTP的调用框架,本文将在 Spring Cloud应用场景下,介绍组件 OkHttp3 的设计原理。 1. Spring Cloud的接口调用工作模式 Spring Cloud接口调用基本工作方式 Spring Cloud作为组合式的分布式微服务解决方案,再服务调用上,至少需要解决如下几个环节: 面向接口的编程形式 接口调用过程,除了拼装Http请求外,为了提高接口调用的无感性,在这个环节上,目前采用的是Feign工具完成的。至于feign的工作原理,请参考我的另一篇博文: 客户端负载均衡Feign之三:Feign设计原理 服务负载均衡和选择机制 作为分布式调用框架,服务消费方需要通过一定的机制知道应当调用某一特定服务提供方实例,Spring Cloud 目前采用的是 Ribbon来完成的。至于Ribbon的工作原理,请参考我的另一篇博文: Spring Cloud Ribbon设计原理 . 作为http 客户端,向服务器发起Http请求 Http客户端在Java语言中,目前比较流行的有 Apache HttpClients components , HttpUrlConnection , OkHttp 等, OkHttp 在性能、体积各方面表现比较好,采用此框架作为http