As the capabilities of our distributed applications increased, so did our
consumption of bandwidth. In 1998, our server sent objects no larger than 50K
to a group of users on a local network. By 2002, we were passing an average
of 500K per object, with some as large as 1.5MB.
More important, the distribution of our user base grew from 50 to over 1,500,
with some users based across the country from the server. Add in a group of
users roaming on their modem connections and the full scale of our bandwidth
issues become clear. We were presented with a problem faced by many
developers of distributed systems: reduce bandwidth usage and client wait
time without removing any functionality. This article shares our solution to
this problem, providing you with the simple code that ... (more)