|
Hi,
This issue is about Web Performances of Jenkins.
I checked the way the HTML page was build and found out that several optimization could be done:
1/ CSS should be shrinked
For Example, using YUICompressor
I'm not familiar with maven, so I cannot develop a patch, but it seems there is a Maven plugin to do that:
http://stackoverflow.com/a/11495021
2/ JS should be shrinked
Closure Compiler is the best shrinker currently. Again, there is a plugin to do that:
https://github.com/jlgrock/ClosureJavascriptFramework
3/ JS could be merged into single JS
YUI allows to download a single file:
http://developer.yahoo.com/yui/articles/hosting/
4/ CSS should be merged
5/ Images should be organized a sprite (unless they are animated GIF)
http://alistapart.com/article/sprites
You could do multiple sprites, depending on size or use cases.
As you are using SVG, you could use <image> tag to do that, so you don't have to change your current SVG:
<image x="10" y="20" width="80" height="80" xlink:href="" />
http://stackoverflow.com/a/5451238
6/ some of your images are resized on the browser side:
Main logo:
https://ci.jenkins-ci.org/static/94539174/images/title.png
Disk usage plugin:
https://ci.jenkins-ci.org/static/94539174/plugin/disk-usage/icons/diskusage48.png
Git:
https://ci.jenkins-ci.org/static/94539174/plugin/git/icons/git-32x32.png
Instead, you should generate them a the right size (unless you need multiple sizes)
To diagnose that, you can use Web Developer plugin (Firefox or Chrome):
http://chrispederick.com/work/web-developer/
Then Image > Outline image with adjusted dimensions
6*/ Your "main logo" is just some text
You could write it instead of using an image?
7/ Your favicon seems to be very large (18k)
You should/could use a simpler favicon to reduce size
Read this for some advice:
http://zoompf.com/blog/2012/04/instagram-and-optimizing-favicons
I know it's a single request with many request inside. Tell me if you want separate requests.
Shrinking and merging CSS & JS will have the biggest impact
Thank you,
Thomas P.
PS:
Those advices come from:
http://developer.yahoo.com/yslow/
https://developers.google.com/speed/
|