没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Thrift
概览
免责声明:由于本人也是菜鸟,故本文是在本人亲自实践下融合网上 N 家
文章所得,大部分来自互联网,且大部分已注明出处。但因为完成时间稍长,
故必有所疏漏。若有侵权,敬请发消息,我会在适当时间做修改。谢谢。
Thrift 简介
Thrift 是 Facebook 开发出的一个软件库和一组代码生成工具,以加快高效
率、可扩展的后端服务的开发与实现的速度。它通过对各语言最常用的部分加
以抽象,把它们放进一个通用库里,再用各个语言实现,来实现跨编程语言的
高效而可靠的通信。亦即,Thrift 允许开发者在一个单独的语言无关的文件里,
定义数据类型和服务接口,然后生成用来构建 RPC 客户和服务器所需的全部代
码。
Ubuntu 下安装方法
注:主要参考官网和网上论坛文章。
1. 首先安装依赖包
命令如下:sudo apt-get install libboost-dev libboost-test-dev libboost-program-
options-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev
经过这一步 thrift 所需要依赖的库文件应该全部装上了。
1
Thrift
概览
2. 下载安装包
从官方网站(http://thrift.apache.org/download/)上下载最新安装包 thrift-
0.9.0.tar.gz
3. 解压缩
下载完后用如下命令解压缩:tar -zxvf thrift-0.9.0.tar.gz
4. 进入文件夹 thrift-0.9.0
命令为:cd thrift-0.9.0
5. 运行配置文件
在运行此步前,需要确认自己想需要安装的语言包。
C++所需要的在第一步已经安装。
安装 Ant 可以运行:sudo agt-get install ant
2
Thrift
概览
也可以下载源码包自己编译。
运行配置文件./configure JAVAC=/usb/bin/javac
--prefix=/XXX/XXX/XXX/ --without-csharp --without-
erlang --without-perl --without-php --without-
php_extension --without-haskell
(说明:xxx 代表具体目录,如果没有—prefix 参数,则默认装到当前目录
without 参数指不安装该语言的生成器,可不写,不写的话默认安装全部,
JAVAC 指定自己的 Java 环境变量,可不写,自己探测)。
6. 编译
运行命令:make
7. 编译安装
运行命令: sudo make install
完成。
如果是默认安装的话,完成后含有 thrift 文件的目录有/usr/local/include/
thrift(头文件目录),/usr/local/lib(库文件目录),/usr/local/bin/thrift(thrift
可执行程序)
因为 thrift 用到了 boost 库,经查看 boost 默认安到了/usr/include/boost 目录
下。
3
Thrift
概览
自带例子测试
在…/thrift-xx.xx.xx/tutorial 目录下存在了很多自带的例子,可以运行测试一
下。
C++版本的例子:
1)在…/thrift-xx.xx.xx/tutorial 目录下有一个 tutorial.thrift 和 shared.thrift 文
件,要运行例子,首先利用 tutorial.thrift 生成服务代码,首先测试 C++版本的例
子。
命令为:thrift –r –gen cpp tutorial.thrift
执行后会在当前目录下生成 gen-cpp 文件夹,该文件夹包含了服务所使用
的一些 cpp 文件和头文件。
2)进入 cpp 文件夹,命令为:cd cpp
3)执行编译命令,命令为:make
4)上一步如果没有出问题的话,就会在当前目录下生成 CppServer 和
CppClient 两个文件,运行命令:./CppServer
就会出现启动服务的提示
之后启动新的终端,并进入到该目录,执行命令:./CppClient
之后服务端会有响应,客户端也会输出计算的结果。
4
Thrift
概览
Java 版本的例子:
运行 Java 版本的例子需要安装 ant 编译工具(可选择 sudo apt-get install ant
命令来安装,装到/usr/share/ant 文件夹下,也可以自己下载编译安装)。
1)同样在…/thrift-xx.xx.xx/tutorial 目录下执行命令:
thrift –r –gen java tutorial.thrift
会生成 gen-java 文件夹
2)执行命令:cd java
3)执行命令:ant
4)没有出错的话,则会生成 JavaServer 和 JavaClient 文件和 build 文件夹
5)运行:./JavaServer
6)同 C++的方法运行:,/JavaClient [simple] [secure]后边两个方法二选一
成功。
跨语言测试:
上述两步成功后,可以先运行 cpp 目录下的 server 文件,然后在运行 Java
目录下的 client 文件,可以看到跨语言运行的结果。反之亦然。
遇到的问题
在进行的过程中遇到许多问题,有:
1.执行 sudo make install 命令后,最终提示 Build Failed。
处理方法:经过搜索各种方法,即使修改./configure 后边的参数,去掉所有
5
剩余20页未读,继续阅读
资源评论
- 倩倩的闹钟2013-10-18可以使用,值得下载的
- tongjch2014-06-10很好能,有用
- tjzhangyu2016-01-06还可以,确实只是收集
改改更健康
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功