All Pages tagged 'go-codec'


Benchmarks!!! Serialization in Go!!!
By Ugorji Nwoke   16 Dec 2014 (updated 02 Jul 2019)   /blog   technology go-codec
Let’s have some fun with some numbers.

In the serialization in go article , we discussed a number of types of encoding formats and their libraries in go.
Yet Another JSON Library? But Why?
By Ugorji Nwoke   16 Dec 2014 (updated 01 Jul 2019)   /blog   technology go-codec
And let me answer …

The encoding/json library bundled with the standard library is a GREAT piece of software.
Code Generation using go-codec - for 2-20X performance improvement
By Ugorji Nwoke   18 Dec 2014 (updated 01 Jul 2019)   /blog   technology go-codec
go-codec supports compile-time generation of encoders and decoders for named types, which does not incur the overhead of reflection in the typical case, giving 40% to 100% performance improvement over the idiomatic runtime introspection mode.

Idiomatic encoding and decoding types within go typically relies on the reflection capabilities of the go runtime. This affords flexible performance without the need for a pre-compilation step; the go types contain all the information needed and the runtime exposes the full types via reflection. However, introspecting the runtime to get this information has a noticeable overhead, which can be eliminated by a pre-compilation/code-generation step.
How go-codec achieves its stellar performance
By Ugorji Nwoke   17 Dec 2014 (updated 01 Jul 2019)   /blog   technology go-codec
They say premature optimization is the root of all evil. I say some layers of the stack MUST be optimal. The layer that does marshalling of data MUST be optimal.

go-codec library supports code generation OR runtime reflection for its encoding and decoding. We will mostly discuss the runtime reflection in this article. It is easiest to compare this to other libraries.
go-codec: Primer and How To Guide
By Ugorji Nwoke   21 Dec 2014 (updated 01 Jul 2019)   /blog   technology go-codec
go-codec is a high performance and feature rich library that provides idiomatic encoding and decoding support for msgpack, binc, cbor, json and simple formats. It supports both runtime introspection (reflection) and code generation. Below, we will walk you through using it for your serialization needs.

Supported formats:
go-codec supports cbor? What is a CBOR?
By Ugorji Nwoke   15 Dec 2014   /blog   technology go-codec
Glad you asked. cbor stands for: Concise Binary Object Representation .

cbor is a relatively new binary format which builds upon the simplicity of messagepack and json. It is currently being targeted agressively in the internet-of-things space. It is a kick-ass format.
Re-Introducing Go Codec Library: msgpack, binc, cbor, json and more formats
By Ugorji Nwoke   15 Dec 2014   /blog   technology go-codec
The go-codec library is a High Performance , Feature-Rich and Idiomatic Go encoding/decoding library for binc , msgpack , cbor , json , with runtime reflection or compile-time code generation support. View Source at http://github.com/ugorji/go .

Sometime in 2013, we announced go-codec as a library for msgpack. The go-codec library has come a long way since then.
Serialization In Go
By Ugorji Nwoke   14 Dec 2014   /blog   technology go-codec
For data transfer between systems to occur, the sending side must encode the data structures into a stream of bytes, and the receiving side must efficiently decode the stream of bytes into a representative data structure.

There is efficient and extensive support for this when using go as your language runtime. The standard library provides support for the following general-purpose encodings:
technology20 geek10 go-codec8 appengine8 golang7 android2 x-featured1 social1 musings1 rant1

Subscribe: Technology
© Ugorji Nwoke