July 02, 2009

For Web apps, performance remains an uphill battle

Despite browser improvements, network bottlenecks and scripting problems plague cloud-based applications

Firefox 3.5 has arrived, and according to Mozilla Foundation developers, its major advantage is speed. The new version of the open source Web browser is the first generally available release to include the TraceMonkey accelerated JavaScript engine, which previously had been found only in the 3.1 betas.

This move is the latest volley in the rejuvenated browser wars, as browser vendors shift their focus toward improving the performance of Web-based applications. Google set the pace when it shipped Chrome with a high-performance JavaScript engine last year. Since then, Opera and Apple have both announced new JavaScript engines for their respective browsers, and even Microsoft has grudgingly worked to optimize IE8.

[ See also: Google seeks faster Web | Keep up with app dev issues and trends. Check out InfoWorld's Developer World channel and Fatal Exception and Strategic Developer blogs. ]

But browser performance isn't everything. Users experienced delays browsing major news sites in the wake of the death of pop star Michael Jackson last week, but the problem there wasn't slow browsers or even overloaded servers. According to Web monitoring company Keynote Systems, in many cases site slowdowns were caused by ad networks and other third-party content providers, whose own networks couldn't handle the increased traffic.

additional resources
White Paper - How to Improve Delivery of Advanced Web Applications

White Paper

Virtual Workforce: The Key to Expanding The Business While Cutting Costs

Get the independent advice and expertise you need to support a virtual workforce.

Go inside:
The three-step approach to making a virtual workforce a reality.
The four flavors of client virtualization technologies.
The three key initiatives that solve IT challenges.
Download now »
White Paper: Successfully Secure Your Wireless LAN With Wi-Fi firewalls.

White Paper

Addressing Linux Threats Leveraging Fewer Resources

The increase in Linux popularity has increased the frequency and sophistication of malware attacks. Read this 2 page white paper now to learn how you can protect your Linux environment with real-time protection that is certified by all major Linux vendors.

Download now »
White Paper - The 2009 Handbook of Application Delivery

White Paper

The 2009 Handbook of Application Delivery

Ensuring acceptable application delivery will become even more difficult over the next few years. As a result, IT organizations need to ensure that the approach that they take to resolving the current application delivery challenges can scale to support the emerging challenges. This handbook elaborates on the key tasks associated with planning, optimization, management and control and provides decision criteria to help IT organizations choose appropriate solutions.

Download now »
White Paper - Is Your Backup System Outdated?

White Paper

Mid-range Storage Considerations

A common misconception is that mid-range storage requirements are dramatically different than that of a larger enterprise. Mid-range storage users may require less capacity, but they have similar functionality and management requirements. This ESG paper examines mid-range storage needs and reviews a new solution that adjusts size while retaining value, performance and functionality.

Download now »
BigRonG 2-Jul-09 5:16am
How are these problems unexpected? ISPs and backbone providers have always 'opened' the web wider when they had money or when they weren't taking that money and spending it to acquire greater market. (I.E. they spend money on these items only when forced by the marketplace and governmental entities.) Anyone with a good grasp on history knows that 'timesharing' (the old term for cloud computing) had more demand than capacity. Economically, that situation guaranteed a good ROI. It also kept down the overhead (experienced staff, space issues, the equipment replacement grind, etc.). In my mind, it is the primary reason that most businesses should not 'depend' on cloud computing (security and other issues to the side). Timesharing is a great capacity expander for growing enterprises - not the 'end all' answer.
tomaddox 2-Jul-09 8:42am
It seems like there ought to be a way to load content as it becomes available instead of having to wait on secondary content which, let's face it, is not what most people come to a site to view anyway. That said, running Firefox with NoScript can do away with some of the lag since it stops JavaScript from executing by default and thus keeps the user from having to wait for subsidiary content to load. On a related note, many software vendors now supply Web interfaces in lieu of native clients for their products, and the Web interfaces are, without exception, inferior: they're slow (even on a gigabit LAN), are less intuitive, and generally don't provide the same degree of functionality, suggesting that the Web browser is not a fully-fledged OS replacement, even after all this time.
jeffreytz 2-Jul-09 2:32pm
As a perfect example, look no further than the InfoWorld site and all the crap it loads when you want to read an article :)
ikevinTV 2-Jul-09 6:45pm
There are significant speed, performance and features limits to web-based AJAX applications. Why not develop platform-native Cloud based applications? These desktop can take full advantage of the underlying platform's full power (such as a Cocoa app for Mac or a C#/.NET app for Windows) and makes RESTful calls to read/save all data - ie. no data is saved on disk. Is cloud computing applications of the future really an all-web world? No, I don't think so. Sometime later, people will start thinking about the raw performance and feature benefits and rethink about desktop apps. Kevin Pan (Open Source Developer) http://ObjectsOnClouds.org - Open Source Cloud Computing Project
RRabins 6-Jul-09 6:56am
It's not a battle. It's a matter of testing and capacity planning. It's not fair to say, "for web apps in general," because that is a generalization. IT teams, developers, and the businesses they serve must (and often do) consider performance as part of the application requirement. To do so means certain performance metrics are targeted for the project, and must be attained and sustained. There are best practices and ample tools for this, including but not limited to load testing, stress testing, regression testing, web performance measurement and monitoring, etc. Depending on the performance levels targeted, applications can be designed to scale accordingly, using code optimization/refactoring of bottlenecks, load balancing of servers, more hardware, etc. From the user perspective, building apps with rich user interfaces can improve real performance, as well as the appearance of performance. For example, a database-driven app that requires data be submitted and then fetches (and refetches) web pages appears slower (and often is, in fact, slower) than a database-driven app that uses AJAX. The AJAX GUI can maintain asynchronous connections to the server, keeping data "live" on the end user's screen, and presenting a desktop-like experience through a browser. Ditto Flash, Silverlight, Java, or native apps pushed through a browser, although I would not recommend those approaches for business apps, as they are essentially fat clients that require downloading of plugins and code. This reduces performance, both real and perceived, and defeats the purpose of what we're talking about here. Give users high-performance GUIs (my vote is for AJAX, as it works with all the leading browsers), have targeted performance metrics, test and tune during development, capacity plan your hardware in the cloud properly, and measure and refactor (if neccessary) after deployment. Richard Rabins Co-Chairman Alpha Software http://blog.alphasoftware.com

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Today's Headlines: First Look Newsletter

Find out what will be news for the day, with our first-thing-in-the-morning briefing.

©1994-2010 Infoworld, Inc.