• Hadoop集群配置【六、thrift安装】


    数据环境搞好了,必须考虑如何存取、传输。我们用thrift。Facebook 开发的远程服务调用框架 Apache Thrift,支持 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk 。其传输数据采用二进制格式,相对 XML 和 JSON 体积更小,对于高并发、大数据量和多语言的环境更有优势。

    本系列只讲部署安装,原理神马的以后再说!

    有些人安装thrift很容易就成功了,那是因为他机器的各种库比较全,有些安装目录和版本也恰好对了,我就没那么幸运了【其实我总是那么不幸。。】

    上教程:

    我安装的是thrift 8 ,必须要说一句的是你必须配php 5.2.X,别的版本不行!我去php官网下载,居然没有了,只有5.4,5.3.。。郁闷。

    1.安装thrift所需环境及依赖库
    g++ lex yacc boost libevent autoconf automake libtool pkg-config等,一个个的看吧,缺哪个装那个。
    (详见http://wiki.apache.org/thrift/ThriftRequirements)
    大多都是经典三步安装
    1>./configure --prefix=安装目录【一般不指定安装目录即可】
    2>make
    3>make install

    boost安装有点区别:
    1>./bootstrap.sh --prefix=安装目录
    2>./b2
    3>./b2 install

    2.安装thrift:(根据情况选择配置选项)
    1>./configure --with-boost=boost安装目录 --prefix=安装目录
    (可能遇到configure文件没权限,自己修改该文件的权限)
    2>sudo make
    3>sudo make install

    遇到错误不要担心,一点一点的排除。你可以先看看那些文件编译不过去,在排除了权限问题之后,你可以去lib下的每个文件夹下去单独编译。

    我遇到的问题是开始php模块显示了某些函数没有被声明的错误,我想明明php已经安装成功了,但是就是不行,最后去报错的头文件去看了一下,所需的头文件也顺便看了一下,发现确实没有那个函数,最后在国外的一个论坛看见一个哥们说,只有php5.2才有。。好吧,我直接下载了,就可以了。

    另外,我的cpp模块也编译不过去,原因是libevent的include找不到文件了,一并下载安装,OK搞定!

    顺便提一句,五台机器都需要部署,直接把make过的打包发过去,然后直接make install 就行了,挺快的!

    如果你有权限问题,最后make 和 make install的时候不要忘了sudo啊。

     

  • 相关阅读:
    matlab基础知识
    reverse number
    C++基础知识(一)
    ES6 let const学习
    [ZZ]一名IT从业者的英语口语能力成长路径
    使用windows Live Writer 以及office word 2013发布文章到博客园总结
    CString.format的用法
    Cstring 与 string 注意点
    卡尔曼滤波应用
    linux 重新挂载分区(教程)
  • 原文地址:https://www.cnblogs.com/colorfulkoala/p/2586505.html
Copyright © 2020-2023  润新知