| By Hon Wong | Article Rating: |
|
| July 31, 2008 12:30 PM EDT | Reads: |
1,561 |
The computing power of the user's computer also plays a critical role in delivering acceptable performance. Executing DOM methods or changing CSS values in response to AJAX application requests may require the browser to re-lay out or redraw the page constantly. These activities tax the computing power of the user's PC and could impact application performance as perceived by the end user.
Looking beyond the user's browser and PC, the network connectivity between the end user and the rest of the application infrastructure also plays an important role in delivering the AJAX application in a timely manner. Because of constant JavaScript calls to the server and the server's response across the Web cloud, it is easy for AJAX applications to lose their "zippiness" when there is a network connectivity issue. Similar to the user-side issues mentioned earlier, this is another key area of concern over which IT has limited control but which could have a dramatic effect on whether the cool AJAX application is zipping along, or hiccupping.
Considering how each real user's browser, PC and network connectivity can impact AJAX application performance, it is critical that IT takes into account latency or delays that could happen at the "last mile" by measuring application performance directly at each real user's browser. Today's "workhorse" for Web application performance monitoring - synthetic monitoring services - are not capable of providing needed visibility into performance issues faced by real users of Web applications. A synthetic monitoring service provider allows IT to record a sample end-user session or script, which is then replayed periodically from various geographic locations to collect the response time the Web site takes to fully respond.
The one major limitation of the synthetic monitoring service approach is that the collected data is not "real." The synthetic script is executed by a monitoring node operated by the service provider that is most definitely not representative of the real user's (or even an average user's) browser or browsing session. As a result, it is impossible to infer the application performance as experienced by each real user from these synthetic measurements.
Consumers are demanding a better Web surfing experience as evidenced by the penetration of broadband connectivity into homes. As of the end the 2007, Parks Associates reported that over 50% of U.S. households have broadband connectivity. Similarly, Gartner reported that nearly 45% of households in Western Europe have broadband access. In some forward-thinking Asia-Pacific countries like Korea, the penetration rate even reaches into the upper eighties. With higher bandwidth comes higher expectation of near-instantaneous response time. Unfortunately, bandwidth is just one of many factors that could impact the delivery of superior Web application performance. Problems can (and will) occur:
- Inside the data center at any of the Web, application, or database tier
- At a particular physical or virtual server tasked with serving up the application content or processing the transaction
- Within an application due to hidden bugs or performance bottlenecks among the tens of thousands of method calls or SQL queries
- Because of incompatibility, patch level differences or configuration requirements between the code and the underlying computing platform/server or operating system running on the production server
- With a third-party Web service call to fetch content, process payment, etc.
- Due to the interaction of the above infrastructure or application elements
Even if the real users call to complain about performance problems (which is highly unlikely, since competing sites are just a click away), IT still does not have any actionable information to help them pinpoint the cause of problems. Managing AJAX performance could be a "mission impossible" - or at least requires a cast of thousands to pull off - if IT does not adopt a new end-to-end approach to AJAX performance management.
Follow the Money and Other Gumshoe Techniques
This new approach is similar to the investigative approach described in many detective stories - with a twist, of course. To solve the perfect crime, the detective has to find the loot and follow the money back to the source to uncover the villain behind the crime.
Managing the performance of a complex AJAX application is similar. IT has to be able to:
- Detect. Directly measure AJAX application performance at the browser of every real user, taking into account the difference in performance from one user to another due to variations in browser, PC, or connectivity.
- Isolate. Receive real-time performance insight into all infrastructure and application elements from browser to database that impact the delivery of the AJAX application so that performance issues can be quickly triaged and their causes identified and resolved.
- Optimize. Identify performance bottlenecks (e.g., slow, but frequently used method calls) based on actual usage to maximize the return of investment for application optimization activities.
Armed with this information, IT can eliminate the need to gather experts with various silo expertise to re-create and debate the problem. They can proceed directly to implementing a fix, cutting the time to problem resolution by half, or more. Data on performance bottlenecks can also be summarized so developers can understand where in the application they can earn the most return for their tuning or code optimization effort.
Managing the performance of complex AJAX applications is certainly not a trivial endeavor. If IT does not start with the right approach for monitoring and diagnosing performance problems, it will certainly turn any attempt to deliver better user experience using AJAX into a sluggish spectacle.
Yes, cool is good, but slow cool ain't so hot!
Published July 31, 2008 Reads 1,561
Copyright © 2008 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Hon Wong
Hon has served as CEO of Symphoniq Corporation since its inception. Prior to joining Symphoniq, Hon co-founded NetIQ, where he served on the board of directors until 2003. Hon has also co-founded and served on the board of several other companies, including Centrify, Ecosystems (acquired by Compuware), Digital Market (acquired by Oracle) and a number of other technology companies. Hon is also a General Partner of Wongfratris Investment Company, a venture investment firm. Hon holds dual BS in electrical engineering and industrial engineering from Northwestern University and a MBA from the Wharton School at the University of Pennsylvania.
- Kindle 2 vs Nook
- Cloud Computing on Gartner's Top 10 List and SYS-CON Events' 2010 Calendar
- Confessions of a Ulitzer Addict
- IBM Hardware Chief, Intel VC Exec Arrested in Insider Trading Scam
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Ulitzer.com Named Exclusive "New Media" Sponsor of Cloud Computing Conference & Expo
- Moving Your RIA Apps into the Cloud: Seven Challenges
- Adobe’s Aiming ColdFusion at Multiple Clouds
- Windows 7 – Microsoft’s First Step to the Cloud
- Ulitzer Provides a Powerful Social Journalism Platform
- Jill Tummler Singer, Deputy CIO of CIA, Keynotes at GovIT Expo
- Open Source Mobile Cloud Sync and Push Email
- Kindle 2 vs Nook
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing on Gartner's Top 10 List and SYS-CON Events' 2010 Calendar
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- IBM Hardware Chief, Intel VC Exec Arrested in Insider Trading Scam
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Ulitzer.com Named Exclusive "New Media" Sponsor of Cloud Computing Conference & Expo
- US Post Office Hops a Ride on NetSuite’s Cloud
- Moving Your RIA Apps into the Cloud: Seven Challenges
- Adobe’s Aiming ColdFusion at Multiple Clouds
- Building a Drag-and-Drop Shopping Cart with AJAX
- What Is AJAX?
- Google Maps! AJAX-Style Web Development Using ASP.NET
- Flashback to January 2006: Exclusive SYS-CON.TV Interviews on "OpenAjax Alliance" Announcement
- AJAXWorld Conference & Expo to Take Place October 2-4, 2006, at the Santa Clara Convention Center, California
- AJAX Sponsor Webcasts Are Now Available at AJAXWorld Website
- How and Why AJAX, Not Java, Became the Favored Technology for Rich Internet Applications
- "Real-World AJAX" One-Day Seminar Arrives in Silicon Valley
- AJAXWorld University Announces AJAX Developer Bootcamp
- AJAX Support In JadeLiquid WebRenderer v3.1
- Where Are RIA Technologies Headed in 2008?
- Struts Validations Framework Using AJAX





































