• 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啊。

     

  • 相关阅读:
    题解 P4999 【烦人的数学作业】
    题解 P2657 【[SCOI2009] windy 数】
    题解【洛谷 P1466 [USACO2.2]集合 Subset Sums】
    乘法逆元
    浅谈二维前缀和
    浅谈位运算
    浅谈 Lucas 定理
    浅谈 exgcd
    【洛谷P1754 球迷购票问题】题解
    RPA机器人工厂化时代下,艺赛旗要做什么样的“四新”产品
  • 原文地址:https://www.cnblogs.com/colorfulkoala/p/2586505.html
Copyright © 2020-2023  润新知