前言
前面几篇博客,着重对Apache Thrift
的使用和原理做了介绍。在微服架构流行的今天,自然而然就会想到Spring Boot
和Spring Cloud
作为微服务的基础框架。然而,Spring Cloud
从诞生以来,就基于HTTP
协议的轻量级Restful API
作为服务之间的通信方式。
在微服务架构设计中,可以分为外部服务和内部服务。两者主要区别是:
- 外部服务:基于
Restful
风格的HTTP
协议,通过外网向外部提供服务,相对来说简单并且通用。 - 内部服务:基于
RPC
消息通信的TCP/IP
协议,提供内网服务与服务之间的调用,以达到减少带宽、降低延迟率、提高性能。
一些应用场景,尤其是内部服务需要高频地调用,就需要考虑是否需要改造为RPC
实现,来提高吞吐量和系统性能,比如说鉴权服务一类。