多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > ubuntu下Thrift快速入門

ubuntu下Thrift快速入門

來源:程序員人生   發布時間:2014-10-26 08:00:00 閱讀次數:3177次

一、thrift簡介

自己百度谷歌一下把。

二、thrift安裝

(1)安裝一些必要庫

sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev libboost-system-dev libboost-filesystem-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev
對于其他系統,如centos、mac、windows,安裝要求見下面官網教程:

http://thrift.apache.org/docs/install/

(2)下載

http://thrift.apache.org/download我下載的版本是0.9.1

(3)解壓安裝

解壓后,進入根目錄,輸入:

./configure && make
如果最后輸出一個ERROR,說 "libcrypto required",可能是需要安裝libssl - dev的包

sudo apt-get install libssl-dev


如果輸入thrift   -version,提示說thrift-compiler沒有安裝,怎安裝上。


sudo apt-get install thrift-compiler
安裝完compiler后,就可以開始編寫thrift文件了。

三、thrift基本語法和架構

1、Thrift基礎架構

Thrift 是一個服務端和客戶端的架構體系,從我個人的感官上來看 Thrift 是一個類似XML-RPC+Java-to- IDL+Serialization Tools=Thrift 的東東,Thrift 具有自己內部定義的傳輸協議規范(TProtocol)和傳輸數據標準(TTransports),通過 IDL 腳本對傳輸數據的數據結構(struct) 和傳輸數據的業務邏輯(service)根據不同的運行環境快速的構建相應的代碼,并且通過自己內部的序列化機制對傳輸的數據進行簡化和壓縮提高高并發、 大型系統中數據交互的成本,下圖描繪了 Thrift 的整體架構,分為 6 個部分:


(1).你的業務邏輯實現(You Code)

(2).客戶端和服務端對應的 Service

(3).執行讀寫操作的計算結果

(4).TProtocol

(5).TTransports

(6).底層 I/O 通信
圖 中前面 3 個部分是 1.你通過 Thrift 腳本文件生成的代碼,2.圖中的褐色框部分是你
根據生成代碼構建的客戶端和處理器的代碼,3.圖中紅色的部分是 2 端產生的計算結
果。從 TProtocol 下面 3 個部分是 Thrift 的傳輸體系和傳輸協議以及底層 I/O 通信,
Thrift 并且提供 堵塞、非阻塞,單線程、多線程的模式運行在服務器上,還可以配合
服務器/容器一起運行,可以和現有 JEE 服務器/Web 容器無縫的結合。


2、數據類型

A、Base Type :基本類型

(1)bool:布爾類型(true或false)

(2)byte:8位有符號整數

(3)i16:16位有符號整數

(4)i32:32位有符號整數

(5)i64:64位有符號整數

(6)double:64位浮點數

(7)string:文本字符串,使用UTF-8編碼

B、Container:容器:如list、set、map

C、Struct:結構體類型

如下面的一個例子:

struct People {

1:string name;

2:string sex;

}

struct和C里面的結構體很類似。

D、Exception:異常類型

E、Service:定義對象的接口和一系列方法

如下面一個例子:

service  DemoService {

string getUserName(1:i32 id);

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

}

一個service對應一個類,里面是一些方法。

如getUserName方法就是根據一個id返回一個字符串,add方法是對num1和num2進行求和。


3、協議

Thrift可以在kehudaun和服務端之間傳輸選擇通信協議,協議總體上分為文本(text)和二進制(binary)傳輸協議。

* TBinaryProtocol

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 一个色综合久久 | 一级毛片一级毛片一级毛片一级毛片 | 午夜小影院 | 国产日韩欧美自拍 | 99久久精品国产国产毛片 | 亚洲自拍第二页 | 亚洲在线免费视频 | 免费观看视频网站 | 国产亚洲欧美精品久久久 | 黄色在线网站 | 色视频一区二区三区 | 欧美xxxxx性另类 | 免费一级欧美大片久久网 | 国产精品毛片在线大全 | 操人视频网站 | 日本一区二区三区不卡在线视频 | 在线满18网站观看视频 | 一级做a爰片性色毛片男 | 亚洲自偷 | 国产不卡一区二区视频免费 | 男女啪啪成人免费网站 | 国产区亚洲区 | 亚洲看片网 | 性xxxx| 羞羞的动漫网站 | 久久精品视频观看 | 午夜dj视频在线观看免费 | 亚洲在线视频播放 | 国产午夜不卡在线观看视频666 | 欧美日韩国产亚洲人成 | 青青国产成人精品视频 | 亚洲精品一区二区三区 | 欧美偷| 欧美一级高清片欧美国产欧美 | 狠狠去 | 热久久国产欧美一区二区精品 | v天堂中文在线 | 最近最新中文字幕免费1 | 国产午夜精品久久理论片小说 | 操欧美女| 亚欧成人中文字幕一区 |