首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Protostuff序列化分析

生成的对象用来作为业务对象并不是特别友好,往往业务对象和Protobuf对象存在一个互相转换的过程;考虑到我们仅仅是将业务对象直接序列化到数据库,发现Protobuf在这种情况下并不是特别的好; 这时候发现了Protostuff...,protostuff不需要依赖.proto文件,可以直接对普通的javabean进行序列化、反序列化的操作,而效率上甚至比protobuf还快,生成的二进制数据库格式和Protobuf完全相同的,可以说是一个基于...简单测试 1.先测试一下Protostuff 提供一个简单的javabean public class Person { private int id; private String name;...是一样的,那可以分析一下Protostuff的源码 源码分析 1.Schema schema = RuntimeSchema.getSchema(Person.class); //获取业务对象Person...总结 大致了解了Protostuff对业务对象序列化的过程,不管是简单的测试还是通过查看源码,都可以发现Protostuff的序列化方式是完全借鉴Protobuf来实现的。

49420

【面试题精讲】ProtoStuff

什么是 ProtoStuff? ProtoStuff 是一个 Java 序列化框架,它基于 Google 的 Protocol Buffers(简称 protobuf)协议。...而 ProtoStuff 通过使用 protobuf 协议,可以解决这些问题,提供更高效的序列化和反序列化操作。 3. ProtoStuff 的实现原理?...ProtoStuff 的实现原理主要包括以下几个方面: Schema 定义:ProtoStuff 使用 Schema 来描述 Java 对象的结构信息,包括字段名称、类型等。...ProtoStuff 的使用示例 下面是一个简单的 ProtoStuff 使用示例: // 定义一个Java对象 public class User {     private String name;...ProtoStuff 的优点 高性能:ProtoStuff 采用紧凑的二进制编码方式,序列化后的字节数量较小,从而提高了传输效率和存储空间利用率。

21730

Java序列化库protostuff介绍

一、什么是protostuff protostuff是一个开箱即用的序列化库,使用非常简单,相对其它序列化库,protostuff优势在于: 1、使用简单 Protobuf每次要编写接口定义文件,然后还要编译...,操作太繁琐; 2、高性能 相对json等文本序列化库,protostuff是二进制的,因此性能比json等方式高; 可以说protostuff在高性能和使用成本上做了很好的取舍。...以下是其相关资料: github:https://codechina.csdn.net/mirrors/protostuff/protostuff 官方文档:https://protostuff.github.io...>io.protostuff protostuff-core 1.4.0</version...; 2、返回/接收客户端内容为protostuff协议 在Controller上加上相应的@Consumes和@Produces注解: @Consumes({ MediaTypeExt.APPLICATION_PROTOSTUFF_V2

2.7K10

【干货】使用Protostuff和Gzip压缩用户标签及模型

使用Protostuff和Gzip压缩用户标签及模型 廖鹏 最近在做算法工程端的时候,发现用户的相关特征比较大,如用户离线特征、实时曝光、实时点击等,如果按照常规方式存入Redis,则是每个用户所消耗的内存大小会是在...2 Protostuff是什么?...Protostuff是基于Google Protobuf实现的Java运行时序列化与反序列化的工具类库,免去了需要定义.Proto文件,再去生成对应的语言相关的文件。...4 测试数据输出结果 原始数据大小 71343字节 Protostuff序列化后 65280字节 Gzip压缩后 7403字节 特征值数量 7892个double值 传统序列化方式后 110677字节...Protostuff序列化后 71028字节 Gzip压缩后 796字节 Gzip解压后 71028字节 反序列化回来后特征值数量 7892个double值 5 总结 有了Protostuff,我们存入

1.9K30
领券