Thrift

✍ dations ◷ 2025-09-08 08:32:10 #自2013年8月需要澄清文字的条目,应用层协议,数据序列化格式,进程间通信,远端程序呼叫,Facebook软件

Thrift是一种接口描述语言和二进制通讯协议,它被用来定义和创建跨语言的服务。它被当作一个远程过程调用(RPC)框架来使用,是由Facebook为“大规模跨语言服务开发”而开发的。它通过一个代码生成引擎联合了一个软件栈,来创建不同程度的、无缝的跨平台高效服务,可以使用C#、C++(基于POSIX兼容系统)、Cappuccino、Cocoa、Delphi、Erlang、Go、Haskell、Java、Node.js、OCaml、Perl、PHP、Python、Ruby和Smalltalk。虽然它以前是由Facebook开发的,但它现在是Apache软件基金会的开源项目了。该实现被描述在2007年4月的一篇由Facebook发表的技术论文中,该论文现由Apache掌管。

Thrift包含一套完整的栈来创建客户端和服务端程序。顶层部分是由Thrift定义生成的代码。而服务则由这个文件客户端和处理器代码生成。在生成的代码里会创建不同于内建类型的数据结构,并将其作为结果发送。协议和传输层是运行时库的一部分。有了Thrift,就可以定义一个服务或改变通讯和传输协议,而无需重新编译代码。除了客户端部分之外,Thrift还包括服务器基础设施来集成协议和传输,如阻塞、非阻塞及多线程服务器。栈中作为I/O基础的部分对于不同的语言则有不同的实现。

Thrift支持众多通讯协议:

支持的有:

Thrift还提供众多的服务器,包括:

Thrift一些已经明确的优点包括:

Thrift由C++编写,但可以为众多语言创建代码。要创建一个Thrift服务,必须写一些Thrift文件来描述它,为目标语言生成代码,并且写一些代码来启动服务器及从客户端调用它。下面就是一个这样的描述文件的代码示例:

enum PhoneType { HOME, WORK, MOBILE, OTHER}struct Phone { 1: i32 id, 2: string number, 3: PhoneType type}

Thrift将由这个描述信息生成独立的代码。例如,在Java里,PhoneType将是Phone类中一个简单的enum

相关

  • 原核原核生物(英文:prokaryote)是通常由单一原核细胞形成的生物。相对于真核细胞,原核细胞一般没有细胞内膜、没有核膜包裹的成型细胞核,细胞内无染色体,DNA链未螺旋化,并以游离的形成
  • 甲氧氟烷甲氧氟醚(INN),商品名Penthrane,是种在1970和80年代相当流行的卤代醚全身麻醉药。本化合物由威廉·穆勒(William T. Miller)在曼克顿计划的技术积累之上于1948年首次合成。甲氧氟
  • 格奥尔格·威廉·斯特勒格奥尔格·威廉·斯特勒(德语:Georg Wilhelm Steller,1709年3月10日-1746年11月)是德国植物学家、动物学家、医生和探险家,曾在俄罗斯工作,并远赴勘察加半岛和阿拉斯加等地参与探险
  • 拉美西斯二世妮菲塔莉(奈非尔塔莉),伊塞诺费特(英语:Isetnofret),玛特妮斐鲁丽,梅利塔蒙(英语:Meritamen),宾塔娜特(英语:Bintanath),荷努特美拉(英语:Henutmire),拉美西斯二世或拉姆西斯二世(Ramesses II,约
  • 敦煌市坐标:40°08′32″N 94°39′43″E / 40.1421299464764°N 94.66188110411167°E / 40.1421299464764; 94.66188110411167敦煌市位于中国甘肃省西北部,是酒泉市代管的一个县级
  • 大蚊科See text大蚊科(学名:Tipulidae)是昆虫纲双翅目大蚊总科下的一科。该科遍布世界各地,不过个别种只会在少数地区见到。热带地区的大蚊种类最为丰富,此外更靠北的地区也较为常见。
  • 米格-15比斯战斗机米格-15战斗机(俄语:МиГ-15,拉丁字母转写:MiG 15)由苏联米高扬-格列维奇飞机设计局设计的,北约给予的绰号是“柴捆(Fagot)”,是苏联第一代战机的代表。米格15也被认为是第一代后掠
  • 第十第十航空队(英语:Tenth Air Force)是美国空军预备役司令部下属的一个编号航空队,指挥部位于德克萨斯州的沃斯堡海军航空联合预备役基地(英语:Naval Air Station Joint Reserve Bas
  • 石龙区平顶山市石龙区,原名为西区,与平顶山市其他三个城区并不接壤,为一块飞地。因所在地有河名为石龙,后于1997年12月18日报国务院改为石龙区。下辖龙河、龙兴、人民路和高庄四个街道
  • 语录语录是一种文学体裁,是把特定人物说的话纪录成书,一般不会附上任何关于背景的解说。名言汇集本如:维基语录也是语录的一种,也包括是指一些政权特别收集出版的某一政客的一些名言