首先要对thrift了解,就是一个RPC框架,做过JAVA的应该知道类似于dubbo,
thrift是FaceBook开源的一款跨语言的RPC(Remote Procedure Call:远程过程调用)框架,其具体过程为:RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行【摘自百度百科】。
好了,不了解的人可能还是一脸懵213,此篇文章的目的也不是在于深究thrift的底层原理,这里我们只要学会thrift的用法就好!首先我们还是根据RPC过程描述对thrift的具体操作有个总体认识,如下图所示:
我们的目的是实现Client客户端和Server服务端的通信传输,有了thrift框架的好处就是,客户机调用进程发送一个有进程参数的调用信息到服务进程而无需关注底层的网络传输,这个调用信息通过thrift框架定义的一个.thrift文件定义,.thrift文件定义一个简单的中的数据类型和服务接口,以作为输入文件,可以通过特定的命令使用编译器生成代码用来方便地生成RPC客户端和服务器通信的特定语言的代码,以下将从.thrift文件构造,Client和Server代码生成和Client和Server代码编写三个部分
一.首先是书写接口文件
使用thrift定义的语