现在的位置: 首页 > 综合 > 正文

使用thrift实现java与node.js的通讯

2013年07月21日 ⁄ 综合 ⁄ 共 977字 ⁄ 字号 评论关闭

   其实之前thrift和node.js接触都很少,因为最近项目要用到node.js,并且需要涉及到java与node.js的通讯,就想到了thrift。因为使用的系统是Lion,所以这篇文章也从安装和配置方面,记录下MAC平台下这些服务的搭建方式。

   node.js是一种可以在后端运行的js语言,因为使用了回调机制避免了线程膨胀的问题,所以在处理简单并且高性能要求的web服务方面有一定优势。具体可以看这篇文章

我为什么向后端工程师推荐Node.js。http://nodejs.org/,有MAC下的pkg安装包。最新版似乎是0.6.7。

   thrift是facebook提出的一种跨平台远程通信框架,效率比较高。thrift可以从http://www.apache.org/dyn/closer.cgi?path=/thrift/0.8.0/thrift-0.8.0.tar.gz下载到,需要编译安装,目前最新似乎是0.8.0。这个版本跟svn下来的版本不同,不需要执行./bootstrap进行初始化,直接使用./configure编译并安装就可以了。

   thrift的使用比较复杂,首先需要编写一个thrift文件,用于确定连接双方的接口。具体的thrift文件写法可以参考http://wiki.apache.org/thrift。下面是一个简单的例子:

Test.thrift

1
2
3
4
namespace
java net.johnc.thrift
 service
Test {
  void

ping(
1:
i32 length)
}

   使用thrift编译成java文件:thrift --gen java Test.thrift。完成后生成一个java文件,大概是这样子:

1
2
3
4
5
6
7
8
9
10
.........
public

class

Test {
                                      
  public

interface

Iface {
                                      
    public

void

ping(
int

length)
throws

org.apache.thrift.TException;
                                      
  }

抱歉!评论已关闭.