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包,直接下载运行即可
- 工程完整文件.rar (1.4 MB)
- 下载次数: 1
网友 2011/11/9 11:30:42 发表
多谢了