OK, now that I have my head around what is going on, it appears that the static stuff is being cached and served up via Varnish.
It appears that my browser is not respecting the varish response though. The response has the following header: Cache-Control:public, max-age=43200 and yet another request is made when I hit cmd-r. When I click around, I still see requests for this resource, with the 304 response code. I'm using Chrome. UPDATE: OK, digging a bit more, I found this page: http://code.google.com/speed/page-speed/docs/caching.html In particular, I note this bit: "Set the Last-Modified date to the last time the resource was changed. If the Last-Modified date is sufficiently far enough in the past, chances are the browser won't refetch it." And, looking more closely at the response headers, I see this: Cache-Control:public, max-age=43200 Connection:keep-alive Date:Fri, 27 Jan 2012 05:31:46 GMT Last-Modified:Thu, 26 Jan 2012 17:14:44 GMT Server:nginx Via:1.1 varnish X-Varnish:800861986 And note that the Last-Modified date is today, even though we haven't deployed a new version of our app for a while, which I believe may be why Chrome is issuing requests for the resources even though it isn't changing. When I resubmit, I see a different Last-Modified header for the same resource. So my guess here is that the Last-Modified header is generated by the change date of the file on a particular instance of Varnish, and that various instances are coming up and going down, causing the Last Modified date to be relatively recent, causing Chrome to submit more requests to the server than I'd like. Does that sound at all plausible? Thanks, Carson On Jan 26, 5:56 pm, Carson Gross <[email protected]> wrote: > Looking at it a bit more (as well as some *yikes* requests to our > server) I see that we are getting a ton of 304s, which are, no doubt, > tying up our dynos. > > So, this may be more of a rails question than a heroku question, but > how can I set expires headers on certain static directories? > > Yes, I am a complete and utter newb at this. > > Cheers, > Carson > > On Jan 26, 5:00 pm, Carson Gross <[email protected]> wrote: > > > > > > > > > Heya, > > > Sorry, digging through the docs I couldn't really get an answer on > > this that I understand: > > > So, with static assets, deployed on the bamboo-ree-1.8.7 stack, are > > static assets served by web dynos? As our application has grown over > > time, we've evolved to issue a horrific number of requests for static > > content (css, javascript, etc.) and I'm trying to understand just how > > bad that is for our performance. Seems like we'd be tying up web > > dynos, but I want to make sure. > > > Secondly, given that I don't feel like rewriting all that code right > > now, is there a way to map certain paths to a heroku app to another > > server, so we aren't hammering our dynos so badly? > > > Thanks, > > Carson -- You received this message because you are subscribed to the Google Groups "Heroku" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/heroku?hl=en.
