随笔分类 - Thrift
摘要:非阻塞模式 #include "RpcServiceHandler.h" #include <thrift/concurrency/ThreadManager.h> #include <thrift/concurrency/PosixThreadFactory.h> #include <thrift
阅读全文
摘要:背景 随着openresty的出现,让nginx使用lua解决一些业务的能力大幅度提高,ngx_lua可以使用nginx自生的基于事件驱动的IO模型,和后端的存储,业务等系统实现非阻塞的连接交互。 如何使用ngx_lua连接后端的Thrift-Server呢? 基于这个需求,本人为ngx_lua做了
阅读全文
摘要:Thrift协议实现目前有二进制协议(TBinaryProtocol),紧凑型二进制协议(TCompactProtocol)和Json协议(TJsonProtocol)。 前面的两篇文字从编码和协议原理方面分析了TBinaryProtocol和TCompactProtocol协议,下面对TJsonP
阅读全文
摘要:Thrift的紧凑型传输协议分析: 用一张图说明一下Thrift的TCompactProtocol中各个数据类型是怎么表示的。 报文格式编码: bool类型: 一个字节。 如果bool型的字段是结构体或消息的成员字段并且有编号,一个字节的高4位表示字段编号,低4位表示bool的值(0001:true
阅读全文
摘要:先上张图,说明一下thrift的二进制协议是什么东东。 报文格式编码: bool类型: 一个字节的类型,两个字节的字段编号,一个字节的值(true:1,false:0). Byte类型: 一个字节的类型,两个字节的字段编号,一个字节的值. I16类型: 一个字节的类型,两个字节的字段编号,两个字节的
阅读全文