什么是RPC
微服务:单个应用程序 -> 一组小型服务
小型服务之间需要通信 -> RPC轻量级通信,像API调用一样easy
微服务优点:
- 独立缩放,可扩展性强,耦合性低,不相互依赖
- 独立发布和部署,自己的部署不影响其他的服务
- 独立开发,独立的技术栈,专注于一个服务
- 优雅降级
- 分散治理
Thrift
下载安装Thrift
下载地址:http://thrift.apache.org/docs/install/debian
./bootstrap.sh
./configure --with-boost=/usr/local
make
make install
demo
一个简单案例:
- 编写IDL文件:包含函数名、输入变量的信息
- 编译生成代码(跨语言通信):一个接口
- 服务器重载实现接口
- 实现服务器和客户端 / 服务端之间相互调用
thrift本质上就是规定一系列协议层层编码解码的rpc架构