国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

Thrift的安裝方法和簡單實例

2019-11-02 16:43:53
字體:
來源:轉載
供稿:網友

本文只是簡單的講解Thrift開源框架的安裝和簡單使用示例,對于詳細的講解,后面在進行闡述。

Thrift簡述  

Thrift是一款由Fackbook開發的可伸縮、跨語言的服務開發框架,該框架已經開源并且加入的Apache項目。Thrift主要功能是:通過自定義的Interface Definition Language(IDL),可以創建基于RPC的客戶端和服務端的服務代碼。服務代碼的生成是通過Thrift內置的代碼生成器來實現的。Thrift 的跨語言性體現在,它可以生成C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml , Delphi等語言的代碼,且它們之間可以進行透明的通信。

Thrift的安裝 

安裝版本為:Thrift v0.9.1

系統版本:Ubuntu 14.04 64位

基本安裝環境:

g++ 4.2
boost 1.53.0
libssl-dev

Thrift的編譯器即代碼生成器是由C++編寫的,所以需要g++來進行編譯安裝,且Thrift源碼中用到了boost庫中相關實現,例如shared_ptr,所以要事先安裝boost庫。

Thrift通信過程中使用ssl對數據進行安全包含,如果為安裝該庫,會在configure時出現configure: error: "Error: libcrypto required."

Thrift提供了,TThreadSever, TThreadPoolServer, TNonblockingServer四種服務器框架,TSimpleServer以單一主線程阻塞的方式進行事件處理,TThreadPoolServer以多線程阻塞的方式提供服務,TNonblockingServer以多線程非阻塞方式工作。 TNonblockingServer服務模型的使用需要事先安裝libevent,libevent-dev庫,libevent是異步事件處理的程序庫,其包含我們常用的poll,select,epoll等異步處理函數。

安裝步驟:

 $./configure   $make   #sudo make install 

configure的結果最后一部分如下,其中Build TNonblockingServer .. : yes的結果對于使用異步的服務器模型是必須的。

anonymalias@anonymalias-Rev-1-0:~/download/thrift-0.9.1$./configure  ......  thrift 0.9.1    Building C++ Library ......... : yes  Building C (GLib) Library .... : no  Building Java Library ........ : no  Building C# Library .......... : no  Building Python Library ...... : yes  Building Ruby Library ........ : no  Building Haskell Library ..... : no  Building Perl Library ........ : no  Building PHP Library ......... : no  Building Erlang Library ...... : no  Building Go Library .......... : no  Building D Library ........... : no    C++ Library:    Build TZlibTransport ...... : yes    Build TNonblockingServer .. : yes    Build TQTcpServer (Qt) .... : no    Python Library:    Using Python .............. : /usr/bin/python    If something is missing that you think should be present,  please skim the output of configure to find the missing  component. Details are present in config.log.  

在本人電腦上make的時候會出現下面的bug,

ar: .libs/ThriftTest_constants.o: No such file or directory

不知道Makefile如何生成的,導致上面這個編譯文件路徑有問題,解決方法有下面兩種:

method1:  解決的方法時直接從Github(git://git.apache.org/thrift.git)上git clone 源碼,先運行./bootstrap.sh,在按照configure安裝。    method2:  可以將已經編譯的test/cpp/*.o復制到test/cpp/.libs后,繼續編譯就可以了  cp test/cpp/*.o test/cpp/.libs/  
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 砀山县| 永定县| 桐庐县| 英山县| 竹山县| 石楼县| 广安市| 罗田县| 福贡县| 城固县| 古交市| 左贡县| 丰城市| 乐昌市| 舟曲县| 龙岩市| 皮山县| 公主岭市| 务川| 都昌县| 峡江县| 修文县| 昭苏县| 聂拉木县| 通州市| 枣阳市| 湘阴县| 定结县| 东阿县| 肥西县| 鱼台县| 浦江县| 德清县| 洛阳市| 石阡县| 攀枝花市| 阿巴嘎旗| 鄂温| 武安市| 五指山市| 兰西县|