Thrift是跨語言的rpc服框架,它結合了功能強大的軟件堆棧和代碼生成引 擎,通過Thrift的編譯環境生成各種語言類型的接口文件,有需要的小夥伴趕緊下載吧。
thrift最初由face book開發,07年四月開放源碼,08年5月進入apache孵化器,現在是Apache基金會的頂級項目。
thrift允許你定義一個簡單的定義文件中的數據類型和服務接口,以作為輸入文件,編譯器生成代碼用來方便地生成RPC客戶端和服務器通信的無縫跨編程語言。。
著名的Key-Value存儲服務器Cassandra就是使用Thrift作為其客戶端API的。
Apache節約軟件框架,為可擴展的跨語言服務開發,結合了軟件堆棧和代碼生成引擎,在C++、java、Python、PHP、Ruby、Erlang、Perl、Haskell、C、Co、JavaScript等之間高效地無縫地構建服務。節點.js,Smalltalk,OCaml和Delphi等語言。
Thrift提供跨語言的服務框架,這種跨語言主要體現在它對多種語言的編譯功能的支持,用戶隻需要使用IDL描述好接口函數,隻需要一條簡單的命令,Thrift就能夠把按照IDL格式描述的接口文件翻譯成各種語言版本。其實,說搭建Thrift環境的時候,實際上最麻煩的就是搭建Thrift的編譯環境,Thrift的編譯和通常的編譯一樣經過詞法分析、語法分析等等最終生成對應語言的源碼文件,為了能夠支持對各種語言的編譯,你需要下載各種語言對應的編譯時使用的包;
本節主要介紹如何搭建Unix編譯環境,搭建時有以下要求:
基本要求:
G++、boost、lex、yacc
源碼安裝要求:
如果使用源碼安裝的方式,則還需要下列工具:
Autoconf、automake、libtool、pkg-config、lex和yacc的開發版、libssl-dev
語言要求:
搭建C++編譯環境:boost、libevent、zlib
搭建java編譯環境:jdk、ApacheAnt
具體搭建環境時可以參考“一”中所列官網的安裝方法。