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.

White Paper

D2D Virtual Tape Library Replication Primer

This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.

Download now »

Trial

Free 30-Day Desktop Virtualization Trial

Download a free 30–day trial and experience how XenDesktop delivers a pristine, on–demand desktop experience to users on whatever device they choose, while cutting IT complexity and costs.

Download now »

White Paper

Why Your Firewall, VPN, and IEEE 802.11i Aren't Enough to Protect Your Network

The emergence of WLANs has created a new breed of security threats to enterprise networks.

Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation

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-2009 Infoworld, Inc.