服务开发框架 Thrift

Apache
Java
跨平台
Apache
2008-10-27

Thrift 是一个软件框架(远程过程调用框架),用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引 擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的、高效的服务。

thrift最初由facebook开发,07年四月开放源码,08年5月进入apache孵化器,现在是 Apache 基金会的顶级项目

thrift允许你定义一个简单的定义文件中的数据类型和服务接口,以作为输入文件,编译器生成代码用来方便地生成RPC客户端和服务器通信的无缝跨编程语言。。

著名的 Key-Value 存储服务器 Cassandra 就是使用 Thrift 作为其客户端API的。

服务定义文件:

service Calculator extends shared.SharedService {

  /**
   * A method definition looks like C code. It has a return type, arguments,
   * and optionally a list of exceptions that it may throw. Note that argument
   * lists and exception lists are specified using the exact same syntax as
   * field lists in struct or exception definitions.
   */

   void ping(),

   i32 add(1:i32 num1, 2:i32 num2),

   i32 calculate(1:i32 logid, 2:Work w) throws (1:InvalidOperation ouch),

   /**
    * This method has a oneway modifier. That means the client only makes
    * a request and does not listen for any response at all. Oneway methods
    * must be void.
    */
   oneway void zip()

}
加载中

评论(5)

ueaner
ueaner
@红薯 url: http://www.oschina.net/p/thrift 最新更新咨询: Thrift 服务开发框架快速入 门 0评/0阅, 评论跟阅读数字不对 Thrift
wisely
wisely
请教一个问题,有什么好用的适合Android或者IOS客户端的RPC调用框架吗?后台基本上用Java,Thrift,BRAP这两个框架怎么样?
i好人大叔am
i好人大叔am
@红薯 Thrift下载地址错了 Thrift
西夏一品堂
西夏一品堂
thrift既然底层用的是socket,为啥还要依赖httpclient #Thrift#
小白小霸王
小白小霸王
thrift既然底层用的是socket,为啥还要依赖httpclient #Thrift#

服务开发框架 Thrift 0.10.0 发布

Thrift 0.10.0 发布,Thrift 是一个可伸缩的跨语言的服务开发框架。它结合了功能强大的软件堆栈和代码生成引 擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa...

2017/01/09 12:13

服务开发框架 Thrift 0.9.1 发布

Thrift是一个可伸缩的跨语言的服务开发框架。It combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Py...

2013/08/22 09:33

没有更多内容

加载失败,请刷新页面

没有更多内容

1
回答
Thrift是否支持https呢?

可以基于Thrift开发ssl的socket,但是Thrift是否支持https呢? 请详细解说一下,谢谢

2013/05/22 17:36
2
回答
win10 下 php 的 stream_select 报错
工兵铲 的回答 2016/04/16 15:25
最佳答案
在thrift官网找到了 win98下会产生这个问题,win10产生的原因可能类似
6
回答
php使用CodeIgniter使用thrift的cpu使用率居高不下

最近在用php和thrift做个小东西,然后框架沿用之前的老系统,使用的是CodeIgniter,不过升级到了3.0.3。 php负责在前端接收http请...

2016/03/07 18:57
3
回答
python脚本执行hive的HQL语句,报错?Invalid status -128

请问 python脚本执行hive的HQL语句,语句报错。 错误代码: 2015-09-30 01:43:26,568 ERROR [HiveServer...

2015/10/02 16:28
3
回答
dubbox+thrift ClassCastException

我使用的是dubbox 2.8.4+thrift,在某些情况下会报类型转换异常,报这个异常之后只能重启才能正常,在某些情况后又会抛异常,以下是异常堆栈。 ...

2017/06/08 14:51
1
回答
thrift,HELP

thrift客户端调用时,返回: java.lang.reflect.InvocationTargetException at sun.reflect.N...

2017/04/06 11:04
1
回答
thrift struct 不支持继承怎么办???

thrift struct 不支持继承怎么办??? 最近在研究,rpc框架thrift, 针对java 来来说:一个类实体继承另一个类,怎么办? 返回nu...

2017/01/06 13:51
3
回答
thrift传输文件,文本和avi格式的视频都能正常传输,jpg格式的图片有问题

thrift传输文件,文本和avi格式的视频都能正常传输,jpg格式的图片有问题。传输过来的图片不能打开,但是文件大小跟传过来之前的大小是一样的,不知道是...

2013/03/19 20:21
1
回答
spark beeline 查询问题

beeline 通过thriftsvr 建立session select 的时候只能出现第一列的值,如下图: 单select一列数据的时候,可正常输出 求解答

2016/01/08 13:36
4
回答
如何用zookeeper解决thrift的集群问题?

因为thrift不支持分布式,单点很容易出故障 所以想用zk解决thrift的集群 请问,能做吗?求思路?

2015/07/02 13:28

没有更多内容

加载失败,请刷新页面

grpc&thrift对比

grpc thrift 都是常用的rpc 框架,这里对grpc 和 thrift 从几个方面对两者进行对比 一,语言支持度不同 grpc 和thrift 对不同语言支持度不一样,相比而言 thrift 比grpc 支持度更广,到底如何...

09/09 01:14
30
0
Python RPC 之 Thrift

thrift-0.12.0 python3.4.3 Thrift 简介: Thrift 是一款高性能、开源的 RPC 框架,产自 Facebook 后贡献给了 Apache,Thrift 囊括了整个 RPC 的上下游体系,自带序列化编译工具,因为 Thri...

01/07 10:04
50
0
windows下在eclipse里面开发thrift的java的客户端和服务器

总结记录,主要是详细的总结了如果在windows下开发thrift的java的客户端和服务器,适合入门初学thrift人员

2015/12/22 17:14
393
1
erlang+thrift配合开发

I think, thrift is a tcp/ip based Client-Server architecture multi-languages supported RPC framework. 要使用thrift+erlang开发,要经过下面几个步骤。 1.对thrift了解。 thrift的功能...

2016/02/22 12:40
10
1
php 从hbase 获取数据

<?php ini_set('display_errors', E_ALL); $GLOBALS['THRIFT_ROOT'] = "/home/t_qmw/project_hbase"; /* Dependencies. In the proper order. */ require_once $GLOBALS['THRIFT_ROOT'] . '/...

03/04 17:50
13
0
thrift多平台安装

thrift支持多语言的RPC,一直都想深入学习了解thrift,最近有空,就上网查了些资料,学习了一下,对它的使用有了一些了解。本篇是写thrift的安装,使用方法会另起一篇来写。 本文使用thrift的...

2016/02/22 12:41
13
1
macos安装thrift0.9.3

# macos安装thrift0.9.3 ##从官网下载最新版thrift0.9.3 ``` http://mirrors.hust.edu.cn/apache/thrift/0.9.3/thrift-0.9.3.tar.gz ``` ##安装前准备 ###安装Boost 1、从brew安装boost ```...

2016/08/10 09:14
87
0
thrift 的安装编译

thrift 的安装编译 1 : 从官网下载最新的包 http://thrift.apache.org/download thrift-0.9.3.tar.gz 2 :解压 thrift-0.9.3.tar.gz 包; tar -zxvf thrift-0.9.3.tar.gz 生成目录 thrift...

2016/08/17 20:40
233
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部