> -----Original Message-----
> From: [email protected] 
> [mailto:[email protected]] On Behalf Of 
> Platonides
> Sent: 15 December 2008 23:41
> To: [email protected]
> Subject: Re: [Wikitech-l] Future of Javascript and mediaWiki
> 
> Jared Williams wrote:
> > Here's the paper (PDF)
> > 
> > 
> http://sdch.googlegroups.com/web/Shared_Dictionary_Compression_over_HT
> > TP.pdf
> > 
> ?gda=Cn21OV0AAADesD7oVzP2tIH3YMhCCYbwV7wKw6Y_LNfrKuXmihkMeg12alwZyuoqs
> > E-BiY8 
> > 8xfLrk0HuZRJs1gcUl6mErWX6yPI8Lq4cE5IelfQO528z8OU2_747KStNgkfeVUa7Znk
> > 
> > The idea being you could get a sdch capable user agent to 
> download the 
> > concated & gzipped javascript in a single request (called a 
> > dictionary), which quick testing is about 15kb for 
> en.mediawiki.org, 
> > cache that on the client for a long period.
> > 
> > Then the individual requests for javascript can just return 
> a diff (in 
> > RFC
> > 3284) between the server version and the client version has in its 
> > dictionary.
> > Obviously if the diffs get too large, can instruct the user 
> agent to 
> > download a more up to date dictionary. Something around 30 bytes of 
> > body (off the top of my head) is the minimum size if the server & 
> > client versions are identical.
> > 
> > CSS also could be managed similarly. 
> > 
> > Also possible to put the static (inline html) in templates into the 
> > dictionary, together with a lot of the translated messages, 
> to try and 
> > reduce the HTML size, though not sure how effective it'd be.
> > 
> > Jared
> 
> I don't see how it will help. The client still needs to 
> download it. Be it the dictionary or the JS.
> What could be benefitted from SDCH are is skin. Instead of 
> transmitting the skin, diff borders, etc. all of that would 
> be in the dictionary, decreasing the transfer per page.
> 

Gzip will compress concatenated javascript files a lot better than the
gzipping the individual files.

Here's what FF is receiving from Main_Page atm...

Size    URL
46634
http://upload.wikimedia.org/centralnotice/wikipedia/en/centralnotice.js?188
10275
http://en.wikipedia.org/w/index.php?title=-&action=raw&gen=js&useskin=monobo
ok
6581
http://meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&actio
n=raw&ctype=text/javascript&smaxage=21600&maxage=86400

Gzipping them concatenated results in single 15kb file. 

Only needs to download it once, and kept on client for months, as server can
send a diff to update to the most recent version at any time, rather than
having to send a whole new js file.

SDCHing MediaWiki HTML would take some effort, as the page output is between
skin classes and OutputPage etc. 

Also would want the translation text from \languages\messages\Messages*.php
in there too I think. Handling the $1 style placeholders is easy, its just
determining what message goes through which wfMsg*() function, and if the
WikiText translations can be preconverted to html.

But most of the HTML comes from article wikitext, so I wonder wether it'd
beat gzip by anything significant. 

Jared




_______________________________________________
Wikitech-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to