RPC框架Thrift架构描述
来源:互联网 发布:淘宝网电脑端描述 编辑:程序博客网 时间:2024/05/17 00:07
一、Thritf API的CS架构
Thrift包含创建CS架构程序的完整技术栈。最上层是从IDL生成的代码,你只需要自己实现服务器端的业务代码部分就可以。业务规则的实现类指需要实现生成的Iface接口就可以。Thrif有内建的数据类型,创建的数据结构作为发送、接收的结果。protocol和translate layer是Thrift运行时的一部分,Thrift包括将protocol和translates绑定到一起的基础部件。
二、thrift支持的协议
- TBinaryProtocol – 一个简单的二进制格式,简单但没有进行空间优化。比text协议要快但是难于调试。
- TCompactProtocol – 一个压缩的二进制格式,通常处理起来也很高效。
- TDebugProtocol – 一个便于人阅读的文本格式,用来帮助调试。
- TDenseProtocol – 类似于TCompactProtocol, 但传输的内容不包括元数据。
- TJSONProtocol – 使用JSON来编码数据。
- TSimpleJSONProtocol – 一个剥离了元数据的JSON格式,只写协议且不能有Thritft自己进行解释。适合于脚本语言。
三、thrift支持的传输协议
- TFileTransport – 写入文件
- TFramedTransport – 使用非阻塞服务时,需要这个传输协议。它以贞的形式发送数据,且每一帧的前面包含长度信息。
- TMemoryTransport – 使用内存作为I/O。
- TSocket – 使用阻塞的套接字I/O。
- TZlibTransport – 用zlib进行压缩,与其他传输工具配合使用。
四、thrift支持的服务
- TNonblockingServer – 使用非阻塞I/O的多线程服务(java是使用NIO实现)。这个服务必须使用TFramedTransport
- TSimpleServer – 使用阻塞I/O的单线程服务,测试的时候特别有用。
- TThreadPoolServer – 使用阻塞I/O多线程服务。
五、使用Thrift的典型工作流程
1、设计你的系统和服务,是接收数据、发送数据还是远程执行一些操作。
2、使用IDL编写接口描述文档,以.thrift为扩展名。服务描述关于函数、参数及返回值、是否抛出异常等信息,这一个文件里面可以提供多个服务的描述。
3、使用thrift命令来生成各种语言的库。
4、实现服务器端和客户端。第一步是实现服务并包装在服务代码中,这些代码依赖于Thrift库和生成的代码,你需要选择合适的processor,transport,和protocol,并且增加实现具体功能的代码。第二步是实现客户端,主要是择合适的processor,transport,和protocol并且实例化由编译器生成的服务类。
5、运行服务和客户端。
阅读全文
0 0
- RPC框架Thrift架构描述
- thrift rpc框架入门
- Thrift RPC框架介绍
- 回顾:Thrift RPC框架介绍
- RPC简介与Thrift框架
- RPC框架-Thrift的使用
- RPC框架 之 Apach thrift
- RPC 工具--Thrift 框架 (一)
- Linux下配置RPC框架Apache Thrift
- 跨语言RPC框架Thrift详解
- thrift系列 - harpc 基于thrift的轻量级rpc框架
- Thrift RPC
- RPC框架Thrift (C++和GO语言例子)
- 开源RPC(gRPC/Thrift)框架性能评测
- VIP_OSP--基于Thrift的RPC框架的基本原理
- thrift,gRPC,rpcx,motan,dubbox等rpc框架对比
- Thrift源码分析(九)-- 扩展Thrift框架来实现Attachable的RPC调用
- Thrift RPC详解
- USB——设备请求和描述符
- Redis高级特性及应用场景
- 见习报告
- wsdl文件转换成java代码
- 序
- RPC框架Thrift架构描述
- 暑期复习计划。
- MySql表名称大小写敏感问题以及修改配置报错问题
- 左旋转字符串
- MPLS IP VPN 跨域配置Option A及总结
- CSDN 积分的作用
- ptrace和wait的理解 (ptrace监控进程)
- Cesium开发实践(二)模拟多架飞机飞行
- gnuplot画图