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


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

    Thrift 学习笔记1——Ubuntu环境下Thrift的安装、编译以及测试


    分类:
    Thrift


    709人阅读
    评论(2)
    收藏
    举报

     

    1Thrift 概念

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

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

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

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

    2Thrift 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出现下面的信息,okinstall 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

    3Thrift 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端:

     

     

     

     

  • 相关阅读:
    个人总结05
    微软拼音的用户体验
    个人总结04
    典型用户和用户场景模式
    个人总结03
    个人总结02
    构建之法阅读笔记06
    个人总结01
    学习进度条——第七周
    WebApi学习总结系列第五篇(消息处理管道)
  • 原文地址:https://www.cnblogs.com/lexus/p/2697261.html
Copyright © 2020-2023  润新知