-
Notifications
You must be signed in to change notification settings - Fork 321
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Why is MessagePack slower than JSON in jackson-databind? #841
Comments
I have seen similarly less-than-optimal performance with tests on https://github.com/FasterXML/jackson-benchmarks -- I think there is room for improvement for |
We haven't focused on the performance of msgpack-jackson. There should be much room for improvement. |
@john-boxcar Thanks for the heads-up! Based on our benchmark tests, the performance didn't seem too bad https://github.com/msgpack/msgpack-java/actions/runs/11042744800/job/30675681860#step:5:510, so I didn't notice the performance issue that you encountered with your test code. I'll take a look into it when I have time later. @cowtowncoder Thank for the comment. Let me ask a quick question. I noticed However, this profile result doesn't show any further stack trace details. I'm wondering if the implementation of |
I am not 100% sure but I suspect But for sure that is on stack trace to most serialization activity so that in itself is not surprising. Just does not give much information. Why timing details are not included; maybe due to JIT inlining? But that seems odd as it's likely some nesting, and should be calling |
@cowtowncoder Thanks for the reply! The information that |
I wrote this crude benchmark to compare the performance of JSON and MessagePack. Consistently, JSON is faster during serialization, faster on deserialization, and MessagePack produces smaller payloads. Based on what I've read, I was expecting MessagePack to be faster during both serialization and deserialization in addition to producing smaller payloads. Are my expecations unrealistic or is there room for improvement here? On my machine, I'm getting this output:
Here are my dependency versions:
Here is the code:
The text was updated successfully, but these errors were encountered: