thrift 的使用

Posted just to bibi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thrift 的使用相关的知识,希望对你有一定的参考价值。

thrift 是Facebook开源的rpc框架。它能定义类型和服务接口,自动生成客户端和服务端的代码,给开发 rpc 系统带来了巨大的便利。主要的优势在于简单而表达能力极强的IDL、跨语言通信、灵活的架构、向前向后兼容给业务发展带来的便利、以代码为文档。上图是thrift服务的架构。

IDL 设计是thrift 的一大亮点,语法简单,表达能力强,而且能适应多种不同的语言。其IDL 尽可能利用java/C++ 等流行的成熟语言中的符号和概念,降低学习成本,更易于令人接受。能够自定义服务接口和结构、unioin、exception、enum。使用一些技巧就可以轻易获得向前向后兼容性。

灵活的架构体现在合理的分层使得很轻松就能在各个层面选择不同的实现,或者加上自定义的流程。同时只定义了服务的接口,可以选择不同的框架和语言来实现接口。能自动生成客户端和服务端的代码,降低了跨语言和跨框架的开发的成本。

在团队合作方面,IDL文件相当于文档和规格说明书,降低了沟通成本。更重要的是完全不用担心文档过时的问题,因为代码是通过IDL生成的,很大程度上文档即代码。

以上是关于thrift 的使用的主要内容,如果未能解决你的问题,请参考以下文章

Apache thrift 安装及使用

thrift使用

Thrift 库:TServerEventHandler 的使用

Thrift介绍以及Java中使用Thrift实现RPC示例

使用Thrift RPC编写程序

Thrift使用实例