Thrift学习笔记

下载

LZ下载的是windows版本,只有一个exe文件,LZ重命名为thritf.exe,可以将exe文件所在的路径加入到环境变量中,这样在命令行中直接就可可以运行thrift这个命令,LZ没有配置,所以每次跑到exe所在的文件运行这个命令,最后直接写了个脚本,省得每次用命令行,只要点这个脚本就能运行

@echo off
D:\thrift\thrift -v --gen java --out ../java Hello.thrift
@pause

-v 是显示执行的过程(可忽略)
–gen 是指定语言
–out指定生成到哪个文件夹
Hello.thrift为文件名

结构

这里写图片描述

层级 作用
Transport (运输) 网络读取/写入网络
Protocol(协议) 一个协议规定了数据类型如何使用底层传输来对自身进行编码/解码,如JSON,XML,纯文本,二进制
Processor (处理器) 处理器封装了从输入流中读取数据并写入输出流的能力
Server (服务器) 服务器将上述所有功能汇集在一起
interface TProcessor {
    bool process(TProtocol in, TProtocol out) throws TException
}
传输协议 描述
TBinaryProtocol 二进制编码格式进行数据传输
TCompactProtocol 高效率的、密集的二进制编码格式进行数据传输
TJSONProtocol 使用 JSON 的数据编码协议进行数据传输
TSimpleJSONProtocol 只提供 JSON 只写的协议,适用于通过脚本语言解析
服务端类型 描述
TSimpleServer 单线程服务器端使用标准的阻塞式 I/O
TThreadPoolServer 多线程服务器端使用标准的阻塞式 I/O
TNonblockingServer 多线程服务器端使用非阻塞式 I/O

例子

参考博客

[1]https://www.cnblogs.com/fingerboy/p/6424248.html
[2]https://www.ibm.com/developerworks/cn/java/j-lo-apachethrift/
[3]https://www.cnblogs.com/johnc/archive/2011/06/19/2084508.html
[4]http://www.micmiu.com/soa/rpc/thrift-sample/
Spring Boot集成thrift
[5]https://cloud.tencent.com/developer/article/1050391

猜你喜欢

转载自blog.csdn.net/zzti_erlie/article/details/79727535
今日推荐