Reduce json object, by normalized it, to speed up your rest api.
If you are using nosql database, and your table is look like this, so do normalize of this json, exlude all entities to a nother store object. See here the result.
- decrease response size, in my example, 674 kb became to 140kb; end response time 53ms became to 33ms.
- decrease memory size, if you store the object in memory, using normalize and de-normalize, does decrease memory size dramaticaly. in my exmple, 755780B became to 189296B.
install by npm
npm i nosql-normalizer
import { normalize, denormalize } from 'nosql-normalizer';
normalize(result, //* id property, defualt :'_id'*//);
denormalize(response);
resolve = (req, res, next) => {
const json = res.json;
res.json = (result) => {
return json.call(res, normalize(result));
};
return next();
}