Thrift 學習筆記1——Ubuntu環(huán)境下Thrift的安裝、編譯以及測試 - 張進の專欄 - 博客頻道 - CSDN.NET
?
1 、 Thrift 概念
? Thrift 是一個軟件框架,用來進行可擴展且跨語言的服務的開發(fā)。它結合了功能強大的軟件堆棧和代碼生成引擎,以構建在? C++,?Java,?Python,?PHP,?Ruby,?Erlang,?Perl,?Haskell,?C#,?Cocoa,?JavaScript,?Node.js,?Smalltalk,?and?OCaml? 這些編程語言間無縫結合的、高效的服務。
thrift 最初由 facebook 開發(fā), 07 年四月開放源碼, 08 年 5 月進入 apache 孵化器。
? Thrift 允許你定義一個簡單的定義文件中的數據類型和服務接口。以作為輸入文件, 編譯器 生成代碼用來方便地生成 RPC 客戶端 和服務器通信的無縫跨編程語言。
看到這里,感覺thrift的作用與webservice差不多,webservice使用xml文件傳輸,文件太大,效率不高,thrift使用二進制數據,效率更高!
2 、 Thrift? Installing?and?Compiling 安裝與編譯
操作系統(tǒng): Ubuntu?8.0+
Thrift 安裝包: thrift-0.7.0.tar.gz
下載地址:http://labs.renren.com/apache-mirror//thrift/0.7.0/thrift-0.7.0.tar.gz
具體安裝過程:
①?Required?packages 安裝相關支持包
sudo?apt-get?install?libboost-dev?libboost-test-dev?libboost-program-options-dev?libevent-dev?automake?libtool?flex?bison?pkg-config?g++?libssl-dev
②?tar?-xvf?thrift-0.7.0.tar.gz 解壓縮文件
③?cd?thrift-0.7.0 進入Thrift安裝主目錄
④?./configure?( 可能出現權限不夠,請修改文件權限 sudo?chmod?777? configure)
⑤?sudo?make?
⑥?sudo?make?install
測試安裝編譯是否成功:
在終端輸入 thrift 出現下面的信息, ok , install?thrift?success. ?
Usage:?thrift?[options]?file?
Options:?
??-version????Print?the?compiler?version?
??-o?dir??????Set?the?output?directory?for?gen-*?packages?
???????????????(default:?current?directory)?
??-I?dir??????Add?a?directory?to?the?list?of?directories?????????????????
searched?for?include?directives?\
-nowarn?????Suppress?all?compiler?warnings?(BAD!)
….
?
⑦編譯Thrift支持Java的相關Jar文件
?
cd?./lib/java
?
然后編譯 ant?( 如果沒有安裝 ant 的話, sudo?apt-get?install?ant ,何為 ant ?類似 c++ 的 make)
?
會生成一個 build 文件夾,里面存放的是 Thrift 支持 JAVA 的相關 jar 包
3 、 Thrift?Tutorial?(for?java) 測試教程
使用 Thrift?Tutorial 的具體步驟:
cd?../../tutorial?
進入 Thrift 自帶的 tutorial 文件夾thrift?-r?--gen?java?tutorial.thrift
生成 gen-java 目錄cd?java
然后編譯 ant? 生成相關 java 文件
現在就可以運行 demo 進行測試了 ~
開啟服務端? ./JavaServer?&
再打開一個終端,模擬客戶端訪問? ./JavaClient
運行結果如圖:
1、service端:
![]()
? ? ? ?? 2 、Client端:
![]()
?
?
?
?
Thrift 學習筆記1——Ubuntu環(huán)境下Thrift的安裝、編譯以及測試 - 張進の專欄 - 博客頻道 - CSDN.NET
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
