tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Magnus Kvalheim (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (TAP5-2201) Serious issue with assets and checksums - different for same file
Date Tue, 05 Nov 2013 14:23:19 GMT

    [ https://issues.apache.org/jira/browse/TAP5-2201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13813941#comment-13813941
] 

Magnus Kvalheim commented on TAP5-2201:
---------------------------------------

Just quick update:
So today I've re-enabled cloudfront on www.movellas.com with the above mentioned workarounds
* Disabled tapestry gzip 
* Decorated CSSURLRewrite for 'in css references'
* Gzip in loadbalancer F5

It all seems to work fine now - although we had to allow gzip in loadbalancer to handle CloudFront
origin requests (HTTP/1.0).
I think tapestry is well within rights to disallow gzip for HTTP/1.0 and it's really a CloudFront
issue. A possible approach to fix just that could be to create a conditional rule in loadbalancer
or decorate/advice request for cloudfront. 

> Serious issue with assets and checksums - different for same file
> -----------------------------------------------------------------
>
>                 Key: TAP5-2201
>                 URL: https://issues.apache.org/jira/browse/TAP5-2201
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.4
>            Reporter: Magnus Kvalheim
>              Labels: 5.4.22
>         Attachments: bootstrap.server2.css, bootstrap.server3.css, server2.png, server3.png
>
>
> Hi everybody.
> Today we've launched a website based on 5.4. We're very exited about the upcoming release(5.4)
and I'll post separately about our experiences (mostly great).
> Post release we've identified a potential serious issue related to assets and their checksums.
> What we see is that a handful of the assets generate different hashes for the same file.
> =Example: bootstrap.css=
> Server 1: 
> /asset.gz/meta/92ffb14a/tapestry5/bootstrap_3_0_0/css/bootstrap.css
> Server 2:
> /asset.gz/meta/5787e482/tapestry5/bootstrap_3_0_0/css/bootstrap.css
> Server 3:
> /asset.gz/meta/f5e7c535/tapestry5/bootstrap_3_0_0/css/bootstrap.css
> Server 3 - restart:
> /asset.gz/meta/219ee41e/tapestry5/bootstrap_3_0_0/css/bootstrap.css
> We also see the same behaviour for the non gzip version of bootstrap.css.
> It is not only for /meta/
> =JCarouselWrapper.css=
> /asset/app/f59da774/mixins/ui/JCarouselWrapper.css
> /asset/app/6ddc92ee/mixins/ui/JCarouselWrapper.css
> As you can see - we're load balanced with app served from several nodes.
> Normally I'd serve these through CloudFront on a cookieless domain (with tapestry as
origin), but it's not possible as load balanced assets could hit 'wrong' server and get the
404 instead.
> So for now they are served through website domain with sticky sessions - and pray that
it don't cause us problems... :)
> All are served with same web container: 
> Apache Tomcat/7.0.39
> JDK 1.7.0_11



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message