`
kavy
  • 浏览: 888359 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Kryo 序列化

 
阅读更多

磁盘序列化

Kryo kryo = new Kryo();
// ...
Output output = new Output(new FileOutputStream("file.bin"));
SomeClass someObject = ...
kryo.writeObject(output, someObject);
output.close();
// ...
Input input = new Input(new FileInputStream("file.bin"));
SomeClass someObject = kryo.readObject(input, SomeClass.class);
input.close();
 
网络序列化
 
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;

import com.esotericsoftware.kryo.Kryo;
import com.esotericsoftware.kryo.io.Input;
import com.esotericsoftware.kryo.io.Output;
import com.taobao.metamorphosis.example.spring.messages.Trade;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Kryo kryo = new Kryo();
		ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
		Output output = new Output(outputStream);

		Trade trade = new Trade();
		trade.setId(1);
		trade.setMoney(12);
		trade.setName("fsdfdsdsfdsfsdfd");
		trade.setAddress("中文");
		kryo.writeObject(output, trade);
		output.close();

		byte[] mesg = outputStream.toByteArray();

		System.out.println(new String(mesg));
		InputStream is = new ByteArrayInputStream(mesg);
		Input input = new Input(is);

		Trade t = kryo.readObject(input, Trade.class);
		input.close();
		String s=t.getAddress();
		System.out.println(s);
	}

}
 
分享到:
评论

相关推荐

    tomcat-session序列化(tomcat-kryo序列化)

    tomcat kryo序列化,msm-memcached-session-manager-tc7-1.8.2

    kryo序列化jar包集合

    2. **内存优化**:Kryo序列化生成的数据通常比Java原生序列化更小,这减少了网络传输和存储的需求。 3. **对象共享**:Kryo支持对象引用的处理,能够在序列化和反序列化过程中保持对象间的引用关系,避免了深拷贝的...

    Kryo序列化及反序列化用法示例

    Kryo序列化及反序列化用法示例 Kryo是Java对象图形序列化框架,它主要特点是性能高效和易用,该项目用来序列化对象到文件、数据库或者网络。序列化是指将对象转换为字节流的过程,而反序列化是指将字节流转换回对象...

    kryo序列化

    Kryo序列化是一种高效、快速的Java对象序列化框架,被广泛用于数据持久化、网络传输和内存缓存等场景。Kryo库以其优秀的性能在众多序列化库中脱颖而出,尤其是在处理大量对象时,它的速度比Java内置的序列化机制快得...

    netty传输kryo序列化的对象基于socket传输

    本主题“netty传输kryo序列化的对象基于socket传输”探讨的是如何结合Netty和Kryo,实现高效、可靠的网络数据传输。首先,我们需要了解Kryo序列化的基本原理。Kryo通过跟踪对象引用和存储类型信息来优化序列化过程,...

    基于Netty通信框架和Kryo序列化协议的Spring集成Nexus RPC框架设计源码

    该项目为基于Netty通信框架和Kryo序列化协议的Spring集成Nexus RPC框架设计源码,共计90个文件,涵盖70个Java源文件、8个XML配置文件、2个YAML文件、2个PNG图片文件、1个Git忽略文件、1个许可证文件和1个Markdown...

    基于Kryo序列化机制的RPC协议——Kryonet的应用与研究

    首先,我们来理解Kryo序列化机制。Kryo是一个高性能的对象图形序列化库,适用于Java和Scala。它的设计目标是速度和低内存占用,这使得Kryo非常适合在网络传输或持久化数据时使用。Kryo通过注册类和对象实例,能够...

    chill:Kryo 序列化库的 Scala 扩展

    寒意 扩展,包括序列化程序和一组类,以简化 Kryo 在 Hadoop、Storm、Akka 等系统中的配置。兼容性版本之间不保证序列化兼容性,因此,我们不建议将其用于长期存储。 序列化高度依赖于 scala 版本兼容性和底层 Kryo ...

    java原生序列化和Kryo序列化性能实例对比分析

    "java原生序列化和Kryo序列化性能实例对比分析" 本文主要介绍了java原生序列化和Kryo序列化性能实例对比分析,涉及Java和kryo序列化和反序列化相关实例。下面是对标题、描述、标签和部分内容的详细说明: 1. 序列...

    nginx+tomcat7+session共享 kryo序列化所需要包

    nginx+tomcat7+session共享 kryo序列化所需要包 1.将上面所提到的包全部拷贝到tomcat的lib下(三台tomcat都需要) 2.修改每台tomcat的conf目录下得context.xml文件或者server.xml文件,在其中加入如下任意一段代码...

    Memchached+Tomcat6|7session共享 kryo序列化所需要包

    Memchached+Tomcat6|7session共享 kryo序列化所需要包 (已经更新至1.8.2版本) 1.将所有的包拷贝至tomcat目录下的lib下面; 2.修改conf/context.xml加下面的代码: memcachedNodes="n1:127.0.0.1:11211" ...

    akka-kryo-serialization, 基于Kryo的Akka序列化.zip

    akka-kryo-serialization, 基于Kryo的Akka序列化 akka-kryo-serialization-- Scala 和Akka基于kryo的序列化程序这个库为 Scala 和Akka提供定制的基于kryo的序列化程序。 它可以用于更高效的akka远程处理。它还可以...

    Memcached-session-manager所需最新jar包-tomcat7-kryo序列

    【标题】:“Memcached-session-manager所需最新jar包-tomcat7-kryo序列”指的是在Tomcat7中使用Memcached作为会话管理器时,需要的特定版本的jar包,特别是与Kryo序列化相关的组件。 【描述】:“Memcached-...

    iginite-persistence-cassandra:使用Apache Cassandra并使用Kryo序列化程序实现Apache Ignite持久性

    在这个项目"ignite-persistence-cassandra"中,我们看到如何配置Ignite以使用Cassandra作为持久化存储,并且采用了Kryo序列化程序来优化数据处理。 首先,让我们了解Apache Cassandra。Cassandra是一个开源的NoSQL...

    kryo-demo,kryo4.0.0-demo

    二、Kryo序列化 1. 安装与依赖 在使用Kryo之前,首先需要将其添加到项目依赖中。对于Maven项目,可以在pom.xml文件中加入以下依赖: ```xml <groupId>com.esotericsoftware</groupId> <artifactId>kryo ...

    Objective-C序列化框架KryoCocoa.zip

    KryoCocoa 是 Kryo 高性能 Java 序列化框架的 Objective-C 移植版本,兼容 Java 版本的序列化格式。示例代码:Kryo *kryo = [Kryo new]; // ... NSOutputStream *outputStream = [NSOutputStream ...

    kryo-3.0.3-all.zip

    1. **高速度**:Kryo序列化速度远超标准的Java序列化,这是由于它采用了字节码操作和预注册类的方式,减少了运行时反射的开销。 2. **低内存消耗**:Kryo通过对象池和对象引用跟踪机制,减少了序列化和反序列化过程...

    Kryo所需的依赖包

    - Kryo序列化是一种将Java对象转换为字节流的过程,以便于存储或在网络中传输。它提供了比标准Java序列化更快的速度和更小的存储开销。 - 序列化过程中,Kryo会跟踪对象引用,避免循环引用导致的无限递归问题。 2...

    memcached session manager 1.9.6 适用于 tomcat 8 各版本 支持kryo等多种序列化方式

    6. **msm-kryo-3.0.3.jar**: Kryo的库文件,用于实现Kryo序列化。 7. **msm-memcached-session-manager-1.9.6.jar**: 主要的memcached session manager实现。 8. **msm-flexjson-3.3.jar**: FlexJSON库,用于JSON...

Global site tag (gtag.js) - Google Analytics