`
binghejinjun
  • 浏览: 35505 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

thrift完整例子

阅读更多
Thrift是facebook向apache推出的为了解决大数据量交换问题的开源项目。开发人员需要定义类似于c的结构体的数据结构和服务接口,利用thrift工具自动产生构建RPC客户端和服务器所需的所有代码。它可以跨语言,可靠通信。
   thrift设计一:将传输层从代码层中分离出来
thrift设计二:将数据结构从传输层中分离出来
本质上,它是以普通二进制格式写数据

实际操作过程:
1.如果要给服务命名,可以考虑使用此种格式:namespace java com.epri.distriAuto.thrift
2.Thrift 中的基本数据类型
    类型 描述
    bool true, false
    byte 8位的有符号整数
    i16 16位的有符号整数
    i32 32位的有符号整数
    i64 64位的有符号整数
    double 64位的浮点数
    string UTF-8编码的字符串
    binary 字符数组
    struct 结构体
    list 有序的元素列表,类似于STL的vector
    set 无序的不重复元素集,类似于STL的set
    map key-value型的映射,类似于STL的map
    exception 是一个继承于本地语言的exception基类
    service 服务。包含多个函数接口(纯虚函数)

3.下载thrift编译工具,此工具可以根据定义好的文件生成服务的客户端和服务端代码
   编译格式如下:
     thrift -gen java test.thrift
开发:

1.编译成功后会生成一个gen-java包,把里面的类文件加入到工程中,注意导入thrift相关jar包:
  slf4j-log4j12-1.5.11.jar,slf4j-api-1.5.11.jar,log4j-1.3alpha-8.ja,,libthrift.jar
2.编写接口实现类,实现test.Iface接口
3.编写服务端代码
4.编写客户端代码
5.测试,运行
说明:
1.thrift编译工具我已放入要下载的文件,名字就是thrift
2.工程中涵盖运行所需全部jar包,直接下载运行即可
2
0
分享到:
评论
2 楼 wj_126mail 2013-09-22  
谢谢分享,博主还提供了thrift.exe,谢谢了。
1 楼 sleepingxu 2012-12-07  
谢谢分享,刚好学习这一块内容。 提供的文件简单易懂

相关推荐

Global site tag (gtag.js) - Google Analytics