Yes, you can apply multiple rewriters to the http response. This is currently made possible by specifying a list of rewirters to be applied through AccelResponseRewriterRegistry<http://svn.apache.org/repos/asf/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/AccelResponseRewriterRegistry.java>. AccelHandler<http://svn.apache.org/repos/asf/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/AccelHandler.java>goes over the list of rewriters and chains the response through each rewriter. The actual rewriters to be used are specified in RewriteModule<http://svn.apache.org/repos/asf/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/rewrite/RewriteModule.java> [Take a look at @Named("shindig.rewriters.accelerate")]
On Mon, Oct 25, 2010 at 6:00 AM, Mark Weitzel <[email protected]>wrote: > i'm guessing that the accelerators are not mutually exclusive and that you > could use more than one for a given request. Is this accurate? If so, maybe > what we should be considering is some kind of strategy that allows you to > register which accel handlers get used then use guice to put them together. > I'll admit to not digging in this area of the code, so take that with a > grain of salt b/c it may already be like this. > > -Mark W. > > On Sun, Oct 24, 2010 at 12:21 PM, Gagandeep singh <[email protected] > >wrote: > > > Hi Chirag > > > > Sorry for the late response, i have been chillaxing for a while now. > > > > The general purpose of accel is to provide a framework for content > > acceleration. The aim is to be able to speed up web pages without > changing > > their functionality. > > A web publisher can always rewrite his page to speed it up. What we are > > trying to do is develop generic techniques that can be deployed to > > accelerate web pages. > > > > Currently cache extension and resource concatenation are the only > rewriters > > implemented, but there are more on the way. For example, Satya recently > > provided patch for ImageAttributeRewriter whose aim is to reduce page > > reflows for images. This might not improve the page latency vise, but it > > affects user perceived latency. > > Any technique that you think can speed up the web page (load time or > > perceived latency) is a candidate for the accel container. > > > > Thanks > > Gagan > > > > On Tue, Oct 19, 2010 at 2:41 AM, Chirag Shah <[email protected]> > > wrote: > > > > > Hi Gagandeep, > > > > > > I was wondering how accel distinguishes itself from other HTTP reverse > > > cache proxies such as squid, apache traffic server, and varnish? > > > > > > Squid and ATS both implement HTTP cache-control extensions such as > > > http-stale-while-revalidate/http-stale-while-error. > > > > > > > Currently the only rewriter that accelerates web pages is > > > ProxyingContentRewriter > > > The server acceleration feature in apache traffic server seems to > > > offer the same feature set. > > > > > > References: > > > http://www.mnot.net/blog/2009/06/12/cache-win > > > http://www.squid-cache.org/ > > > http://trafficserver.apache.org/docs/v2/admin/reverse.htm > > > http://trafficserver.apache.org/docs/v2/admin/http.htm > > > > > > Thanks, > > > Chirag > > > > > > > > > > > > On Mon, Oct 18, 2010 at 6:36 PM, Gagandeep singh <[email protected] > > > > > wrote: > > > > Hi Gerald > > > > > > > > Sorry for the late response. > > > > Currently the only rewriter that accelerates web pages is > > > > ProxyingContentRewriter. It proxies all the resources through shindig > > and > > > > concatenates consecutive javascript and css resources. This helps > > reduce > > > the > > > > number of http requests for the webpage. > > > > In general there are lots of techniques that can be applied to > > accelerate > > > > web pages. Some of them include extending cache of resources and > > > prefetching > > > > like you mentioned. Take a look at Steve Souders books (Even Faster > Web > > > > Sites) for more techniques. > > > > > > > > Stay tuned for more rewriters to come. > > > > > > > > Thanks > > > > Gagan > > > > > > > > > > > > On Thu, Oct 14, 2010 at 7:55 PM, Zhenhua Guo <[email protected]> > wrote: > > > > > > > >> Thanks! > > > >> Any brief description (not detailed description, but from high > level) > > > >> about how content acceleration works in Shindig? Caching? Prefetch? > > > >> > > > >> Gerald > > > >> > > > >> On Wed, Oct 13, 2010 at 10:13 PM, Gagandeep singh < > > [email protected] > > > > > > > >> wrote: > > > >> > Hi Zhenhua > > > >> > > > > >> > Like John mentioned, accel container encompasses rewriters and > > > servlets > > > >> that > > > >> > can be > > > >> > used to accelerate served content. Currently there are some > > optimizing > > > >> > rewriters like proxying > > > >> > embedded content through shindig host and more are on their way. > > > >> > > > > >> > Maybe once we have some more rewriters, we could document it > > somewhere > > > on > > > >> > shindig page. But for > > > >> > now you will just have to go through the code, which is not much > :) > > > >> > > > > >> > Thanks > > > >> > Gagan > > > >> > * > > > >> > * > > > >> > On Thu, Oct 14, 2010 at 6:23 AM, John Hjelmstad <[email protected] > > > > > >> wrote: > > > >> > > > > >> >> Not really, it's just a placeholder as far as its configuration > is > > > >> >> concerned. The new functionality is best understood through > reading > > > the > > > >> >> code > > > >> >> @ this point, since it's quite new. > > > >> >> > > > >> >> --j > > > >> >> > > > >> >> On Wed, Oct 13, 2010 at 5:47 PM, Zhenhua Guo <[email protected]> > > > wrote: > > > >> >> > > > >> >> > Thanks! > > > >> >> > Any document for this new container? > > > >> >> > > > > >> >> > Gerald > > > >> >> > > > > >> >> > On Wed, Oct 13, 2010 at 4:57 PM, John Hjelmstad < > > [email protected]> > > > >> >> wrote: > > > >> >> > > Accel is the container code used for the content acceleration > > > code > > > >> in > > > >> >> > > Shindig. > > > >> >> > > > > > >> >> > > On Wed, Oct 13, 2010 at 12:23 PM, Zhenhua Guo < > > [email protected]> > > > >> >> wrote: > > > >> >> > > > > > >> >> > >> I am upgrading from shindig 1.1 beta5 to shindig 2.0.0. I > > found > > > in > > > >> the > > > >> >> > >> config file > "WEB-INF/classes/containers/default/container.js", > > a > > > >> new > > > >> >> > >> container named "accel" is added. I wonder what is the > > > difference > > > >> >> > >> between accel and default container. > > > >> >> > >> Thanks! > > > >> >> > >> > > > >> >> > >> Gerald > > > >> >> > >> > > > >> >> > > > > > >> >> > > > > >> >> > > > >> > > > > >> > > > > > > > > > >
