sách gpt4 ai đã đi

Giới thiệu về Apache Thrift

In lại 作者:知者 更新时间:2024-03-12 23:31:47 29 4
mua khóa gpt4 Nike

一 点睛

Thrift 是一歀基于 CS 架构的 RPC 框架,最初由 Facebook 研发,2008 年转入 Apache 组织。开发人员可以使用 Thrift 提供的 IDL(接口定义语言)来定义数据结构、异常和接口。IDL 的功能类似 Protobuf 的 message,但 message 只能用于定义数据结构,因此 IDL 比 message 功能更加强大。编写完 IDL 后,就可以通过 Thrift 提供的工具生成各种语言的数据结构(比如 Java 中的类,C 语言中的结构体等)、异常和接口文件。

Thrift 与 Protobuf 相比,除了 IDL 比 messge 更加丰富外,Thrift 还有另外一个巨大的优势,Protobuf 本身只用于消息(message)的编码和解码。也就是说,Protobuf 只能存储 RPC 中的数据,但不能传输数据(必须借助于 Netty、Socket 等通信技术才能传输);而 Thrift 不仅能存储数据,还能直接对数据进行网络传输。

二 Thrift 工作模式

|
服务端的工作模式
|
简介
|
|
TSimpleServer
|
单线程服务模式,通常在测试时使用
|
|
TThreadPoolServer
|
1 阻塞式I/O

2 多线程服务模式
|
|
TNonblockingServer
|
1 非阻塞式I/O

2 多线程服务模式

3 需要结合使用 TFramedThransport 传输方式
|

三 Thrift 传输方式

|
传输方式
|
简介
|
|
TSocket
|
使用阻塞式 socket 传输数据
|
|
TFramedThransport 
|
1 使用阻塞式工作模式

2 以 frame 为单位传输数据
|
|
TFileTransport
|
以文件形式进行传输数据
|
|
TMemoryThransport
|
使用内存I/O 形式传输
|
|
TZlibThransport
|
1 使用 zlib 压缩数据

2 需要与其他传输方式联合使用

3 不支持 Java
|

四 Thrift 传输协议

|
传输协议
|
简介
|
|
TBinaryProtocol
|
二进制格式
|
|
TCompactProtocol
|
压缩格式
|
|
TJSONNProtocol
|
JSON 格式
|
|
TSimpleJSONProtocol
|
1 JSON 格式

2 提供 JSON 只写协议,适用于通过脚本语言解析
|
|
TDebugProtocol
|
使用易读的文本格式,便于 debug
|

五 Thrift 下载

1 下载地址

http://archive.apache.org/dist/thrift

2 下载版本

windows 下的 0.11.0

3 将下载的文件配置到环境变量的 PATH 下

4 查看版本,验证是否配置成功

C:\Users>thrift -version

Thrift version 0.11.0

29 4 0
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com