Bug 889898 - webadmin: yslow report on webadmin
Summary: webadmin: yslow report on webadmin
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine-webadmin-portal
Version: 3.1.1
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: 3.2.0
Assignee: Alexander Wels
QA Contact: Jiri Belka
URL:
Whiteboard: ux
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-12-23 21:46 UTC by Yaniv Kaul
Modified: 2013-07-04 02:57 UTC (History)
7 users (show)

Fixed In Version: sf12
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed:
oVirt Team: ---
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 656954 1 None None None 2021-01-20 06:05:38 UTC
oVirt gerrit 10449 0 None None None Never
oVirt gerrit 10911 0 None None None Never

Internal Links: 656954

Description Yaniv Kaul 2012-12-23 21:46:37 UTC
Description of problem:
yslow = plugin by Yahoo! to suggest enhancement for better performing webpages.
See http://developer.yahoo.com/yslow/ for more information.

1. Grade F on Add Expires headers

There are 14 static components without a far-future expiration date.

    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/gwt/standard/standard.css
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/WebAdmin.css
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/webadmin.nocache.js?...
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_TL.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_T.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_TR.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_L.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/login_header_background_repetitive.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/triangle_down_gray.gif
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_R.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_BL.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_B.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/images/dialog/panel_edge_BR.png
    (no expires) https://rhevm-3.qa.lab.tlv.redhat.com:8443/favicon.ico


2. Grade D on Compress components with gzip

There are 3 plain text components that should be sent compressed

    https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/gwt/standard/standard.css
    https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/WebAdmin.css
    https://rhevm-3.qa.lab.tlv.redhat.com:8443/webadmin/webadmin/webadmin.nocache.js?...

3. Grade B on Make fewer HTTP requests

This page has 10 external background images. Try combining them with CSS sprites.



Version-Release number of selected component (if applicable):
SI25.1.

How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Yaniv Kaul 2012-12-23 21:50:01 UTC
I also think previous work I've done on compressing the PNGs was lost when PNGs were re-done or something.

Comment 2 Einav Cohen 2013-01-11 16:17:48 UTC
very similar to bug 656954 (just on different components); there may be a single solution for both (depends on the level in which it is handled).

Comment 3 Einav Cohen 2013-01-11 16:26:15 UTC
(In reply to comment #1)
> I also think previous work I've done on compressing the PNGs was lost when
> PNGs were re-done or something.

[this is about http://gerrit.ovirt.org/#/c/853/, I assume]

AFAIU it wasn't lost - it is still there, in upstream (where it was done); 
simply need to do the same for the images downstream, that are different images.

Comment 4 Alexander Wels 2013-01-11 16:33:04 UTC
Yes same solution for both user portal and webadmin.

Patches available here:
http://gerrit.ovirt.org/#/c/10911/
and here for the expires headers:
http://gerrit.ovirt.org/#/c/10449/

Comment 8 Jiri Belka 2013-04-22 14:20:53 UTC
YSlow reports:

Grade E on Add Expires headers

There are 4 static components without a far-future expiration date.

    (no expires) https://10.34.63.76/webadmin/webadmin/gwt/standard/standard.css
    (no expires) https://10.34.63.76/webadmin/webadmin/WebAdmin.css
    (2013/4/21) https://10.34.63.76/webadmin/webadmin/webadmin.nocache.js
    (no expires) https://10.34.63.76/favicon.ico

webadmin.nocache.js is OK, <app>.nocache.js could be cached but browser always asks server if the contect hasn't been modified.

In BZ875814 there's no info if .css or .ico file(s) should have any expiration. Please clarify, right now those css files are cached but the server is asked if content has changed - 'no-cache' in Cache-Control, got 304 code when reloading. No idea how is favicon handled... ??

Comment 9 Alexander Wels 2013-04-22 18:27:57 UTC
BZ875814 is about the dynamic content, not static content. The css and ico files are served from JBOSS. We assume that JBOSS knows how to properly send the headers to have the static content cached.

I believe in this case it depends on an ETag instead of a future date for caching purposes.

The favicon is served from Apache and I don't know how it handles caching in the case of a favicon.

So I am not entirely sure what you are asking, but I believe the behavior you are seeing is correct for at least the webadmin.nocache.js (shouldn't be cached, and no future expire date). The two css files are okay due to the ETags. Not sure about the favicon.

Comment 10 Jiri Belka 2013-04-24 09:22:27 UTC
ok, sf13.1 - as clarified in comment#9 it is OK, it means 'no expires' is false alert from YSlow as there's ETag used anyway. But I created BZ956075 to make YSlow more happy.

Comment 11 Itamar Heim 2013-06-11 09:52:24 UTC
3.2 has been released

Comment 12 Itamar Heim 2013-06-11 09:52:26 UTC
3.2 has been released

Comment 13 Itamar Heim 2013-06-11 09:59:07 UTC
3.2 has been released


Note You need to log in before you can comment on or make changes to this bug.