Hey,

Thank you for making the measurements. Can you estimate the time for item Q183 specifically? Since it is 1000 entities weighing 19 MB, this means that on average the entities were 19 KB. Germany on the other hand is much larger, and it makes we wonder how it scales to that size.

Good point - I did not realize the outliers are that big. Q183 takes ~415ms, which is rather long. ~25ms json_decode, ~390ms array -> objects. In itself that is not a problem, though perhaps something to look at after we fixed the critical performance issues. This also does illustrate that one should be careful to not fully deserilaize entities when that is not needed, and that fully deserializing a collection of entities in one request is something to avoid.

Do we have code that falls in the later category? Even if we do only partial deserialization, this is still going to be to costly for an action done dozens of times during a request. We should also not simply assume this is the case now and stop looking for what the critical issues are.

Cheers

--
Jeroen De Dauw - http://www.bn2vs.com
Software craftsmanship advocate
Evil software architect at Wikimedia Germany
~=[,,_,,]:3