yahoo / fili

Easily make RESTful web services for time series reporting with Big Data analytics engines like Druid and SQL Databases.
http://fili.io
Apache License 2.0
174 stars 96 forks source link

Follow Jackson's best practice guide for better performance #301

Open cdeszaq opened 7 years ago

cdeszaq commented 7 years ago

This module boosts serialization / deserialization speed by 30-40%, so we should see if we get a boost: https://github.com/FasterXML/jackson-module-afterburner

We ingest potentially large JSON and output it as well, so it's likely that we'll see a boost.

Here's a doc about Jackson performance best practices that includes Afterburner and we might want to consider when we enable it: https://github.com/FasterXML/jackson-docs/wiki/Presentation:-Jackson-Performance

kevinhinterlong commented 7 years ago

Now that #466 has been merged this issue is just to follow Jackson's best practices guide.

kevinhinterlong commented 7 years ago

One place that deserves cleanup is ScanSearchProvider.

Right now it creates a new ObjectMapper every time it is constructed. Instead we could create a single ObjectMapper in ScanSearchProviderManager and provide it as a parameter