Thrift 学习笔记1——Ubuntu环境下Thrift的安装、编译以及测试
2013-04-24 15:33
1116 查看
1、Thrift 概念
Thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的、高效的服务。thrift最初由facebook开发,07年四月开放源码,08年5月进入apache孵化器。
Thrift允许你定义一个简单的定义文件中的数据类型和服务接口。以作为输入文件,编译器生成代码用来方便地生成RPC客户端和服务器通信的无缝跨编程语言。
看到这里,感觉thrift的作用与webservice差不多,webservice使用xml文件传输,文件太大,效率不高,thrift使用二进制数据,效率更高!
2、Thrift Installing and Compiling 安装与编译
操作系统: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环境下Thrift的安装、编译以及测试
- Thrift 学习笔记1——Ubuntu环境下Thrift的安装、编译以及测试 - 张进の专栏 - 博客频道 - CSDN.NET
- Thrift 学习笔记2——Windows环境下Thrift的安装、编译以及测试
- Thrift 学习笔记2——Windows环境下Thrift的安装、编译以及测试
- Ubuntu环境下Thrift的安装、编译以及测试
- Ubuntu14.04 安装Android 编译环境之 环境变量设置1---学习笔记
- OK6410 Linux开发环境搭建--编译以及ubuntu的使用方法学习笔记
- mesos下载、准备安装环境、编译以及测试
- Java学习——Ubuntu下jdk的安装以及Java环境的配置
- 【转】ubuntu下安装eclipse以及配置python编译环境
- (一)jmeter3.0安装以及环境配置---学习笔记
- Java学习——Ubuntu下jdk的安装以及Java环境的配置
- 开始hadoop前的准备:ubuntu学习笔记-基本环境的搭建(ssh的安装,SecureCRT连接,vim的安装及使用、jdk的安装)
- 【深度学习】Ubuntu环境下Tensorflow的安装以及与Pycharm的相互配置
- ubuntu环境下nginx的编译安装以及相关设置
- HTK 安装、编译以及测试——Ubuntu 14.04
- [FirefoxOS_开发环境]Linux和Ubuntu环境下B2G(Firefox OS)安装、编译、测试教程集合
- Gstreamer学习历程(一):Ubuntu 12.04安装Gstreamer开发环境并测试
- Scala学习笔记 --- Centos7下安装Scala编译环境