首页IT科技ubuntu tracepath(Thrift 学习笔记1——Ubuntu环境下Thrift的安装、编译以及测试 张进の专栏 博客频道 CSDN.NET)

ubuntu tracepath(Thrift 学习笔记1——Ubuntu环境下Thrift的安装、编译以及测试 张进の专栏 博客频道 CSDN.NET)

时间2025-07-04 17:50:19分类IT科技浏览4777
导读:分类: Thrift 2011-11-15 22:03 709人阅读 评论(2 收藏 举报 目录(? [+] Thrif...

分类:

Thrift

2011-11-15 22:03 709人阅读 评论(2) 收藏 举报

目录(?)[+]

Thrift 概念 ThriftInstallingandCompiling 安装与编译 ThriftTutorial(forjava) 测试教程

1            、Thrift 概念

Thrift是一个软件框架            ,用来进行可扩展且跨语言的服务的开发            。它结合了功能强大的软件堆栈和代码生成引擎                  ,以构建在C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Cocoa,JavaScript,Node.js,Smalltalk,andOCaml这些编程语言间无缝结合的                  、高效的服务                  。

thrift最初由facebook开发      ,07年四月开放源码            ,085月进入apache孵化器      。

Thrift允许你定义一个简单的定义文件中的数据类型和服务接口      。以作为输入文件                  ,编译器生成代码用来方便地生成RPC客户端和服务器通信的无缝跨编程语言                  。

看到这里      ,感觉thrift的作用与webservice差不多      ,webservice使用xml文件传输                  ,文件太大            ,效率不高      ,thrift使用二进制数据                  ,效率更高!

2      、ThriftInstallingandCompiling 安装与编译

操作系统:Ubuntu8.0+

Thrift安装包:thrift-0.7.0.tar.gz

下载地址:http://labs.renren.com/apache-mirror//thrift/0.7.0/thrift-0.7.0.tar.gz

具体安装过程:

①Requiredpackages 安装相关支持包

sudoapt-getinstalllibboost-devlibboost-test-devlibboost-program-options-devlibevent-devautomakelibtoolflexbisonpkg-configg++libssl-dev

②tar-xvfthrift-0.7.0.tar.gz 解压缩文件

③cdthrift-0.7.0 进入Thrift安装主目录

④./configure(可能出现权限不够            ,请修改文件权限sudochmod777configure)

⑤sudomake

⑥sudomakeinstall

测试安装编译是否成功:

在终端输入thrift出现下面的信息,ok                  ,installthriftsuccess.

Usage:thrift[options]file

Options:

-versionPrintthecompilerversion

-odirSettheoutputdirectoryforgen-*packages

(default:currentdirectory)

-IdirAddadirectorytothelistofdirectories

searchedforincludedirectives\

-nowarnSuppressallcompilerwarnings(BAD!)

….

⑦编译Thrift支持Java的相关Jar文件

cd./lib/java

然后编译ant(如果没有安装ant的话                  ,sudoapt-getinstallant,何为ant?类似c++make)

会生成一个build文件夹            ,里面存放的是Thrift支持JAVA的相关jar

3      、ThriftTutorial(forjava) 测试教程

使用ThriftTutorial的具体步骤:

cd../../tutorial

进入Thrift自带的tutorial文件夹

thrift-r--genjavatutorial.thrift生成gen-java目录

cdjava

然后编译ant生成相关java文件

现在就可以运行demo进行测试了~

开启服务端./JavaServer&

再打开一个终端                  ,模拟客户端访问./JavaClient

运行结果如图:

1                  、service端:

2            、Client端:

Thrift是一个软件框架      ,用来进行可扩展且跨语言的服务的开发            。它结合了功能强大的软件堆栈和代码生成引擎            ,以构建在C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Cocoa,JavaScript,Node.js,Smalltalk,andOCaml这些编程语言间无缝结合的      、高效的服务      。

thrift最初由facebook开发                  ,07年四月开放源码      ,085月进入apache孵化器                  。

Thrift允许你定义一个简单的定义文件中的数据类型和服务接口            。以作为输入文件      ,编译器生成代码用来方便地生成RPC客户端和服务器通信的无缝跨编程语言。

看到这里                  ,感觉thrift的作用与webservice差不多            ,webservice使用xml文件传输      ,文件太大                  ,效率不高            ,thrift使用二进制数据,效率更高!

操作系统:Ubuntu8.0+

Thrift安装包:thrift-0.7.0.tar.gz

下载地址:http://labs.renren.com/apache-mirror//thrift/0.7.0/thrift-0.7.0.tar.gz

具体安装过程:

①Requiredpackages 安装相关支持包

sudoapt-getinstalllibboost-devlibboost-test-devlibboost-program-options-devlibevent-devautomakelibtoolflexbisonpkg-configg++libssl-dev

②tar-xvfthrift-0.7.0.tar.gz 解压缩文件

③cdthrift-0.7.0 进入Thrift安装主目录

④./configure(可能出现权限不够                  ,请修改文件权限sudochmod777configure)

⑤sudomake

⑥sudomakeinstall

测试安装编译是否成功:

在终端输入thrift出现下面的信息                  ,ok,installthriftsuccess.

Usage:thrift[options]file

Options:

-versionPrintthecompilerversion

-odirSettheoutputdirectoryforgen-*packages

(default:currentdirectory)

-IdirAddadirectorytothelistofdirectories

searchedforincludedirectives\

-nowarnSuppressallcompilerwarnings(BAD!)

….

⑦编译Thrift支持Java的相关Jar文件

cd./lib/java

然后编译ant(如果没有安装ant的话            ,sudoapt-getinstallant                  ,何为ant?类似c++make)

会生成一个build文件夹      ,里面存放的是Thrift支持JAVA的相关jar

使用ThriftTutorial的具体步骤:

cd../../tutorial

进入Thrift自带的tutorial文件夹

thrift-r--genjavatutorial.thrift生成gen-java目录

cdjava

然后编译ant生成相关java文件

现在就可以运行demo进行测试了~

开启服务端./JavaServer&

再打开一个终端            ,模拟客户端访问./JavaClient

运行结果如图:

1                  、service端:

声明:本站所有文章                  ,如无特殊说明或标注      ,均为本站原创发布                  。任何个人或组织      ,在未征得本站同意时                  ,禁止复制            、盗用、采集                  、发布本站内容到任何网站                  、书籍等各类媒体平台                  。如若本站内容侵犯了原著者的合法权益            ,可联系我们进行处理。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
java arraylist删除最后一个元素(Java中ArrayList如何删除指定位置的元素) 揭秘seo排名优化软件的真相是真的吗(揭秘SEO排名优化软件的真相)