随笔分类 -  serializer

摘要:在了解JSON协议之前,朋友们可以先去了解一下JSON的基础知识,和ASCII基本分布,关于JSON一些常识请见这里; JSON(JavaScriptObjectNotation)是一种数据交换格式,是以JavaScript为基础的数据表示语言,是在以下两种数据结构的基础上来定义基本的数据描... 阅读全文
posted @ 2015-06-30 21:03 TomSun*star 阅读(4449) 评论(0) 推荐(0)
摘要:TCompactProtocol协议作为TBinaryProtocol协议的升级强化版,都作为二进制编码传输方式,采用了一种乐器MIDI文件的编码方法(wiki,百度下),简单介绍下两种思想: 1: ZigZag有符号数编码,如表格所示: 编码前编码后00-1112-2324-35 其效果等... 阅读全文
posted @ 2015-06-27 11:27 TomSun*star 阅读(6637) 评论(3) 推荐(0)
摘要:首先看一下Thrift的整体架构,如下图: 如图所示,黄色部分是用户实现的业务逻辑,褐色部分是根据thrift定义的服务接口描述文件生成的客户端和服务器端代码框架(前篇2中已分析了thrift service生成代码),红色部分是根据Thrift文件生成代码实现数据的读写操作。红色部分以下是... 阅读全文
posted @ 2015-06-24 20:53 TomSun*star 阅读(9617) 评论(0) 推荐(0)
摘要:代码生成类解析: Thrift--facebook RPC框架,介绍就不说了,百度,google一大把,使用也不介绍,直接上结构和分析吧。 Hello.thrift文件内容如下:namespace java com.tomsun.thrift.generated.demoservice H... 阅读全文
posted @ 2015-06-20 19:01 TomSun*star 阅读(6135) 评论(0) 推荐(0)
摘要:JSON :Javascript Object Notation,一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。尽管有许多宣传关于 XML 如何拥有跨平台,跨语言的优势,然而,除非应用于 Web Services,否则,在普通的 Web 应用中,开发者经常为 XM... 阅读全文
posted @ 2015-06-15 21:47 TomSun*star 阅读(1044) 评论(0) 推荐(0)
摘要:一:protobuf编码基本数据类型 public enum FieldType { DOUBLE (JavaType.DOUBLE , WIRETYPE_FIXED64 ), FLOAT (JavaType.FLOAT , WIRETYPE_F... 阅读全文
posted @ 2015-06-14 11:42 TomSun*star 阅读(14273) 评论(2) 推荐(2)
摘要:Protobuf 的优点 Protobuf 有如 XML,不过它更小、更快、也更简单。你可以定义自己的数据结构,然后使用代码生成器生成的代码来读写这个数据结构。你甚至可以在无需重新部署程序的情况下更新数据结构。只需使用 Protobuf 对数据结构进行一次描述,即可利用各种不同语言或从各种不同数... 阅读全文
posted @ 2015-06-11 17:01 TomSun*star 阅读(4043) 评论(0) 推荐(0)
摘要:1:定义proto文件: 以一个地址薄为例,从建立一个.proto文件开始,为需要序列化的数据接口加入一个message属性,在message里面,为每一个字段指定名称和类型(算是IDL吧),如下所示:package demo;option java_package = "com.sunchao.s... 阅读全文
posted @ 2015-06-11 16:29 TomSun*star 阅读(2115) 评论(0) 推荐(0)