Xfrogcn.BinaryFormatter 1.0.0 发布

栏目: 软件资讯 · 发布时间: 5年前

内容简介:Xfrogcn.BinaryFormatter 1.0.0 已经发布。 Xfrogcn.BinaryFormatter是一个.NET下的高性能二进制序列化库,它通过底层的Span以及Emit最大限度地提高性能,BinarySerializer整体上采用了与System.Text.Json序列化一...

Xfrogcn.BinaryFormatter 1.0.0 已经发布。

Xfrogcn.BinaryFormatter是一个.NET下的高性能二进制序列化库,它通过底层的Span以及Emit最大限度地提高性能,BinarySerializer整体上采用了与System.Text.Json序列化一致的编程API接口,故简单易用,无需过多的学习成本。

特性

  •  高性能
  •  较少的序列化尺寸
  •  简单易用
  •  引用保持
  •  支持动态加载程序集中的类型
  •  较为全面的内置类型支持
  •  扩展属性
  •  二进制文档模式

性能对比

与.NET内置的System.Runtime.Serialization.Formatters.Binary.BinaryFormatter二进制序列化对比,性能最高可达到它的4倍以上,而序列化结果的大小仅只有它的75%。 以下为通过test/BinaryFormatter.Benchmark性能测试项目获取的性能数据,其中:

  • Json指System.Text.Json,可以看到其性能的确强悍
  • XfrogcnBinary指本库
  • SystemBinaryFormatter指.NET内置二进制序列化库(System.Runtime.Serialization.Formatters.Binary.BinaryFormatter)
  • 类别Stream为采用流化方式序列化
  • 类别Bytes为直接序列化为Byte数组或从Byte数组反序列化
  • 所有的测试都基于默认配置,(流化方式下默认的缓冲区大小将会明显影响序列化性能)

序列化

Xfrogcn.BinaryFormatter 1.0.0 发布

BenchmarkDotNet=v0.12.1, OS=Windows 10.0.18363.1237 (1909/November2018Update/19H2)
Intel Core i7-7500U CPU 2.70GHz (Kaby Lake), 1 CPU, 4 logical and 2 physical cores
.NET Core SDK=5.0.101
  [Host]     : .NET Core 3.1.10 (CoreCLR 4.700.20.51601, CoreFX 4.700.20.51901), X64 RyuJIT
  DefaultJob : .NET Core 3.1.10 (CoreCLR 4.700.20.51601, CoreFX 4.700.20.51901), X64 RyuJIT

Method Categories Mean Error StdDev
Json Stream 61.41 μs 1.212 μs 2.154 μs
XfrogcnBinary Stream 92.97 μs 1.691 μs 2.425 μs
SystemBinaryFormatter Stream 291.37 μs 5.729 μs 11.174 μs
Json_Bytes Bytes 59.79 μs 1.160 μs 1.907 μs
XfrogcnBinary_Bytes Bytes 88.67 μs 1.437 μs 1.274 μs

反序列化

Xfrogcn.BinaryFormatter 1.0.0 发布

BenchmarkDotNet=v0.12.1, OS=Windows 10.0.18363.1237 (1909/November2018Update/19H2)
Intel Core i7-7500U CPU 2.70GHz (Kaby Lake), 1 CPU, 4 logical and 2 physical cores
.NET Core SDK=5.0.101
  [Host]     : .NET Core 3.1.10 (CoreCLR 4.700.20.51601, CoreFX 4.700.20.51901), X64 RyuJIT
  DefaultJob : .NET Core 3.1.10 (CoreCLR 4.700.20.51601, CoreFX 4.700.20.51901), X64 RyuJIT

Method Mean Error StdDev
Json 100.12 μs 1.933 μs 2.374 μs
XfrogcnBinary 96.34 μs 1.631 μs 1.362 μs
SystemBinaryFormatter 334.68 μs 2.319 μs 1.936 μs
Json_Bytes 80.13 μs 1.572 μs 1.989 μs
XfrogcnBinary_Bytes 92.14 μs 1.814 μs 3.623 μs

解决动态加载程序集中类型序列化的问题

如果序列化类型在动态加载的程序集中,而序列化方法封装在非动态加载程序集李,.NET官方提供的BinaryFormatter序列化库将无法进行反序列化,将引发无法找到程序集的错误。 本序列化库已解决此问题

详情查看:https://gitee.com/WuYeCai/Xfrogcn.BinaryFormatter/releases/1.0.0


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

企业IT架构转型之道:阿里巴巴中台战略思想与架构实战

企业IT架构转型之道:阿里巴巴中台战略思想与架构实战

钟华 / 机械工业出版社 / 2017-4-1 / 79

在当今整个中国社会都处于互联网转型的浪潮中,不管是政府职能单位、业务规模庞大的央企,还是面临最激烈竞争的零售行业都处于一个重要的转折点,这个转折对企业业务模式带来了冲击,当然也给企业的信息中心部门带来了挑战:如何构建IT系统架构更好地满足互联网时代下企业业务发展的需要。阿里巴巴的共享服务理念以及企业级互联网架构建设的思路,给这些企业带来了不少新的思路,这也是我最终决定写这本书的最主要原因。本书从阿......一起来看看 《企业IT架构转型之道:阿里巴巴中台战略思想与架构实战》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

SHA 加密
SHA 加密

SHA 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具