By Ari Shamash on Apr 21, 2009
On Monday April 13th, 2009, we deployed build #69 of the Sun Software Library. This blog entry details the additions we've made. If you've been following this blog, you know that the Sun Software Library engineering team does a great job of deploying a new build every two weeks, but the blog entries typically trail the deployment a bit. That's completely because the writer of this blog is a slacker. No other excuse can be made. All sorts of gimmicks were tried, apparently to no avail.
- 2,000 lines of CSS code (I guess you can call CSS code, right?), in 4 different files
- Oodles of images
- Many 3rd party libraries (for example, we rely heavily on the Ext JS toolkit for web UI components)
When we initially deployed the application many many months ago, the browser had to download each and every one of these components separately, requiring approximately 20 seconds to load the entire application, and that was on a fast Internet link in relative network proximity to the web site. Performance from distant parts of the world was atrocious, and that's putting it mildly. We made things a bit better by building an "index.jsp" home page that loaded relatively quickly (e.g. approximately 8-10 seconds), then transitioned to the "app.jsp" main page (which took approximately 20 more seconds to load).
So where are we today?
- A single "app.jsp" page that contains our entire application.
- A single CSS invocation, which is automatically generated with a unique file name containing a timestamp, so it can be cached by the browser but also updated in real time.
- Most of our images are integrated in to a Sprite, automatically generated. The only remaining images that are distinct come from the 3rd party libraries we are using.
- All of our content has a "far future cache expiration date". A browser with a primed cache only requires 8.3 KBytes of new content to render the application (that's the web services call to retrieve the "most viewed" and "recently updated" entries).
So what else is new?
Our home page now links to three key Sun organizations that we work with daily:
- Sun Developer Network:
- Sun Partner Advantage program: The Sun Partner Advantage Program connects Independent Software Vendors (ISVs) to free or deeply discounted offerings as well as sales relationships, so they can deliver solutions/services to an expanded market.
- Project Kenai: Sun's new foundation for its connected developer experience of tomorrow.
Freely host your open source projects and code as well as find and collaborate with developers of
like mind and passion on this site.
Also, we fixed numerous bugs.. Nothing new here, we are always fixing bugs.
As always, feedback (either positive, constructive, or what the weather is like where you) is always welcomed!