I dont know at what size code splitting becomes worthwhile. Wouldn’t it generally be better to download 100 more kb up front after already setting up the connection than introduce the need to download and parse more js every time you click a link? Is that overhead lower than I think?
I’m planning to trial splitting very aggressively (one js/css file per component/dependency) in the near future.
I suspect the performance over http/2 is going to be good enough despite gzip having a smaller corpus to work with, and it means you never load something you don’t need.
It won’t be as fast as a perfectly optimized system (due to the smaller gzip corpus and additional header copies), but it’ll be much harder to mess up and much more cache-friendly across deployments.