Re:Show HN: Kim – A Python serialization and marshaling fram...
by mikeywaites on Wednesday April 12, 2017 @10:31AM
(#14098010)
Hey Dowwie!
That's a great point and an important distinction to make. As I mentioned in some of the other comments, we have certainly been focussed on features over performance so far but we are actively working on dramatically improving the performance of Kim.
I guess it's almost important to pick the right tool for the job. Thanks for sharing the link to asphalt too. I'd not see that before.
Re:Show HN: Kim – A Python serialization and marshaling fram...
by Dowwie on Wednesday April 12, 2017 @10:32AM
(#14098025)
Keep up the good work, Mikey. :) See you at PyCon, maybe?
Re:Show HN: Kim – A Python serialization and marshaling fram...
by mikeywaites on Wednesday April 12, 2017 @10:35AM
(#14098049)
One of the engineers from our team is going to be there for sure. Im certainly keen to go so fingers crossed.
In the case of serialization libraries,unless you are validating as part of your (de)serialization, I'd recommend avoiding schema-driven serialization libraries. These Kim-like libraries, such as Marshmallow, introduce quite a bit of overhead. If validation isn't required and performance matters, I recommend choosing a lighter-weight serialization/marshalling alternative, such as that provided by asphalt-serialization: https://github.com/asphalt-framework/asphalt-serialization
Asphalt-serialization supports cbor, msgpack, json, ... and is easy to wire up
This recommendation is based on my own experience using Marshmallow for Yosai, analyzing its performance and then refactoring to a ported version of asphalt-serialization.