使用Java快速入门Thrift


Apache Thrift是一个facebook建立的RPC框架,现在是一个Apache的顶级项目。Thrift允许通过一个跨语言的定义文件的方式定义数据类型和服务接口,这个文件作为RPC客户端和服务器通信的标准,你也可以去看看Thrift的白皮书了解更多信息。

根据Apache Thrift的官方站点的描述,Thrift是一个:

software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.

安装Thrift比较的烦,但是在Windows下官方编译了一个thrift.exe,下载安装就行了。

写 Thrift定义文件(.thrift file)
如果你之前有接触过这个东西的话,写定义文件非常的简单。但这里可以参考官方的教程快速开始。

示例定义文件(add.thrift)

namespace java com.eviac.blog.samples.thrift.server  // defines the namespace  
 
typedef i32 int  //typedefs to get convenient names for your types 
 
service AdditionService {  // defines the service to add two numbers 
        int add(1:int n1, 2:int n2), //defines a method 
}

编译Thrift定义文件

下面的命令编译.thrift文件

thrift --gen <language> <Thrift filename> 

对于我的例子来讲,命令是:

thrift --gen java add.thrift

在执行完代码后,在gen-java目录下你会发现构建RPC服务器和客户端有用的源代码。在我的例子中我将创建一个叫做AddtionService.java的java文件。

  • 1
  • 2
  • 下一页

相关内容