Skip to content

ybkimm/msgpack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

github.com/ybkimm/msgpack

godoc MIT License

Another MessagePack encoding/decoding library.

This library doesn't use reflection, instead it relies on small interface: Map, Array, and Extension.

Heavily inspired by GoJay.

Features

Get Started

go get -u github.com/ybkimm/msgpack

Benchmark

Testing PC spec:

  • AMD Ryzen 5 2400G (3.90 GHz, 4 Cores, 8 Threads)
  • 8GB RAM (Samsung DDR4)
  • Windows 10 Pro Build 18362.418
  • WSL
BenchmarkDecoder_decodeMap-8     	 5990668	       194 ns/op	      64 B/op	       1 allocs/op
BenchmarkDecoder_decodeArray-8   	 2336313	       512 ns/op	     320 B/op	       2 allocs/op
BenchmarkEncoder_encodeMap-8     	 3324308	       362 ns/op	     640 B/op	       3 allocs/op
BenchmarkEncoder_encodeArray-8   	 2410296	       492 ns/op	     592 B/op	       2 allocs/op

For benchmark data, see msgpack_test.go.

Todo List

  • Optimize JSON conversion
  • 100% coverage
  • New benchmark data
  • Examples

License

MIT License. See License.

Some code snippets are comes from gojay - See it's license.