It seems like the full deserialization of Entities uses a lot of CPU and RAM. We should be able to point out where exactly vast amount of resource are being used to be able to implement the following improvements:
- Have specialized deserializers generating specialized model objects.
- Deferred deserialization. At some level stop deserialization, remember the fragment of the array , continue when asked for the deserialized value. (lazy load)
- Just do not deserialize. Pass the JSON blob (or intermediate array structure) around.