<html>
<head>
$$.!DPage:LeftBarJavascript.
</head>
<body text=#000000 link=#000066 vlink=006699 alink=#0066ff bgcolor=#ffffff>
<form name="GZIPUpload" enctype="multipart/form-data" action="$$.ServletPath." method=POST>
<h2>GZIP Runlength Encoding</h2>
<h4>Turbo charging the client</h4>
Apollo, by default, automatically compresses the datastream being sent to the browser.  This does this by using a runlength compression algorithm named GZIP.  This dramatically reduces the amount of data being transfered to the browser.  Over a modem or slow internet connection, this can provide a significant increase in speed.<br>
<br>
This compression is only activated if the user's browser signals apollo that it supports this type of compression.  GZIP compression is supported in Netscape 4.5 and higher, IE 4.01 and higher, and all versions of mozilla.  Compressing the data stream does take additional CPU cycles.  This is why compression can be disabled on a per request or client basis at any time.  If the web application is transfering a large binary file, such as a word document, compression make not make sense.  It is also possible for GZIP compression to be disabled if the server is under heavy load.  Fortunately, the server time spent compressing data is often less then 1% of the total processing cycles.  This makes GZIP a very attractive option to boost web performance. 
<br>
<br>
In a production environment using GZIP compression, the HTML output was compressed on average 70-75%.  This provides more then a 3x speedup in page loads for clients contrained by connection speed.  Try your own HTML pages out, and see how much they can be compressed.  
<br>
<br>
$$./FileStatsAvailable.
<table>
 <tr>
  <td>Original File Size:</td><td><font color="#FF0000">$$.BeforeSize.</font></td>
</tr>
<tr>
 <td>Compressed File Size:</td><td><font color="#00FF00">$$.AfterSize.</font></td>
</tr>
<tr>
 <td>Uncompressed Estimated download time at 28.8:</td><td>$$.UncompressedSeconds. seconds</td>
</tr>
<tr>
 <td>Compressed Estimated download time at 28.8:</td><td>$$.CompressedSeconds. seconds</td>
</tr>
</table>
<table width=100% border=0>
<tr><td>
<table width=100% cellspacing=1 cellborder=1 cellmargin=1 border=0>
<tr><td halign=left bgcolor=#AA0000 width=$$.Percentage.%><br><br></td>
$$./NotFinished.<td bgcolor="#00AA00" width=1>&nbsp</td>$$.NotFinished/.
</tr>
</table>
</td>
</tr>
<tr><td colspan=1><center>Percent Compression: $$.PercentageDecimal.%</center></td></tr>
</table>
<!--
<a href="$$.!DLink:General,GZIP,Download.&GZIP=1">Download With GZIP</a><br>
<a href="$$.!DLink:General,GZIP,Download.&GZIP=0">Download without GZIP</a><br>
-->
$$.FileStatsAvailable/.
$$.SessionHidden.
$$.!FQUIDHidden.
Upload a sample webpage: <input type=file name="GZIPFile"><br>
<input type=submit value="Test GZIP" name="Upload">
</form>
</body>
</html>