Complete Visibility, end-to-end

AJAX and ContinuousAPM

Subscribe to AJAX and ContinuousAPM: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get AJAX and ContinuousAPM: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories

DevOps is speeding towards the IT world like a freight train and the hype around it is deafening. There is no reason to be afraid of this change as it is the natural reaction to the agile movement that revolutionized development just a few years ago. By definition, DevOps is the natural alignment of IT performance to business profitability. The relevance of this has yet to be quantified but it has been suggested that the route to the CEO's chair will come from the IT leaders that successfully make the transition to a DevOps model. If this still seems foreign to you, I recommend reading up on DevOps Blog from IT Revolution, the OpsCode Blog, and check out The Phoenix Project. Despite all the talk around simple monitoring tools, breaking through the walls between Dev and Ops still poses a real challenge. This is because of a misunderstanding around Operations real purp... (more)

Compuware APM Announces 2013 Best of the Web Award Winners

Compuware Corporation has announced the 2013 winners of its annual Best of the Web awards, honoring top performing sites across five major industries. A comprehensive report featuring all category winners and detailed results of each winner's performance can be downloaded here. Compuware APM's fifth annual Best of the Web awards recognize the top performing companies across five major industries - banking, brokerage, insurance, retail and travel. Winners in each industry are awarded Gold, Silver, and Bronze based on their performance for the entire year across three key measurements - availability, response time and consistency of response time - for their mobile and web home pages and key user transactions. This year's awards have been expanded to include Gold, Silver and Bronze mobile award winners for the first time in recognition that mobile is now a dominant... (more)

Understanding Application Performance on the Network | Part 5

In Part IV, we wrapped up our discussions on bandwidth, congestion and packet loss. In Part V, we examine the four types of processing delays visible on the network, using the request/reply paradigm we outlined in Part I. Server Processing (Between Flows) From the network's perspective, we allocate the time period between the end of a request flow and the beginning of the corresponding reply flow to server processing. Generally speaking, the server doesn't begin processing a request until it has received the entire flow, i.e., the last packet in the request message; similarly, the server doesn't begin sending the reply until it has finished processing the request. We sometimes refer to these delays between flows as "pure" processing delays, distinct from another type of intra-flow processing delay we call starved for data and discuss later. Server processing delays ... (more)

Accurately Identify Impact of System Issues on End-User Response Time

Triggered by current expected load projections for our community portal, our Apps Team was tasked to run a stress on our production system to verify whether we can handle 10 times the load we currently experience on our existing infrastructure. In order to have the least impact in the event the site crumbled under the load, we decided to run the first test on a Sunday afternoon. Before we ran the test we gave our Operations Team a heads-up: they could expect significant load during a two-hour window with the potential to affect other applications that also run on the same environment. During the test, with both the Ops and Application Teams watching the live performance data, we all saw end-user response time go through the roof and the underlying infrastructure running out of resources when we hit a certain load level. What was very interesting in this exercise is t... (more)

Integrated Load Test Analysis

Andreas Grabner described how he used the Compuware APM PureStack technology to identify the server-side performance issues during a recent load test run against the Compuware APM Community Portal, a production application used by our customers. He was able to quickly identify the CPU bottleneck that caused the performance degradation in the server environment, leading to an almost immediate resolution of the issue. Bridging the Gap between Ops and Apps Data by adding Context: One picture that shows the Hotspots of "Horizontal" Transaction as well as the "Vertical" Stack. But what about the external performance recorded during this load test? What would a customer have experienced if they had tried to access the site during this time? Well, at the peak of the test, I used WebPageTest to capture a video of the APM Community Homepage loading (Note: The video has been... (more)

The Website Performance Mistakes of Mobile Shopping Sites in 2013

Our new survey tells us that up to 50% of online shoppers this year will use their mobile device. Good news is that most retail stores that have an online store now also offer a mobile version, e.g., http://m.gap.com, http://m.jcpenney.com, http://m.bestbuy.com. In the past years we have done a deep dive web performance analysis on the desktop versions of these sites and blogged about it. This year we took a look at the mobile sites and found some "terrible" website performance mistakes that will most likely frustrate the mobile shopper. The "highlights" (or lowlights) that we found are: 87 roundtrips from 25 different domains for a single mobile page 28 redirects from the mobile site to the desktop site for downloading JS and CSS 2.5MB of page size for the shopping cart Some pages are already optimized for mobile - but some critical pages are overloaded, have too m... (more)

Bloated Web Pages Can Make or Break the Day

In a previous post, we discussed why GoDaddy could sustain the peak load after its Super Bowl Ad campaign aired and why others like Kia wasted a lot of marketing money because its site availability dropped under the load. In this post, we will look at the technical details behind the impact of oversized pages, and how that may have been averted by kia.com. Kia.com availability eventually dropping to 0% - see previous post Lesson #1: Bloated Pages Will Kill Your Web Servers Previously, I noted availability issues occurred for Kia during game time. The Kia team broke an important performance rule - large number of bytes transferred. First, let's look at the anatomy of an American football fumble- play in motion, ball fumbled, pile-up ensues until possession is determined, then play is recovered or turned over. Now, let's look at the anatomy of a heavy web page otherwis... (more)

Top PHP Performance Tips for Continuous Delivery | @DevOpsSummit [#DevOps]

Are you developing or hosting PHP applications? Are you doing performance sanity checks along your delivery pipeline? No? Not Yet? Then start with a quick check. It only takes 15 minutes and it really pays off. As a developer you can improve your code, and as somebody responsible for your build pipeline you can automate these checks and enforce additional quality gates. And as a PHP Hosting company / group you will be able optimize your deployment and run more of these apps and sustain more load on the same infrastructure. Just like Java, .NET, and Ruby type applications, the top performance bottlenecks are fairly easy to spot and fixing them improves end user performance and saves compute power for your servers. Here is what we discovered when analyzing our own Moodle-based educational platform using the 15 Day Free Trial of dynaTrace: High PHP Compilation Time: O... (more)

Web Service Monitoring 101: Bad Deployments | @DevOpsSummit [#DevOps]

Web Service Monitoring 101: Identifying Bad Deployments Have you ever deployed a change to production and thought "All went well - Systems are operating as expected!" but then you had to deal with users complaining that they keep running into errors? When deployments fail you don't want your users to be the first to tell you about it: Sit down with the Business and Dev to define how and what to monitor We recently moved some of our systems between two of our data centers - even moving some components to the public cloud. Everything was prepared well, system monitoring was set up and everyone gave the thumbs up to execute the move. Immediately following, our Operations dashboards continued to show green. Soon thereafter I received a complaint from a colleague who reported that he couldn't use one of the migrated services (our free dynaTrace AJAX Edition) anymore as... (more)

Software Quality Metrics for Your Continuous Delivery Pipeline | Part 3

Let me ask you a question: would you say that you have implemented logging correctly for your application? Correct in the sense that it will provide you with all the insights you require to keep your business going once your users are struck by errors? And in a way that does not adversely impact your application performance? Honestly, I bet you have not. Today I will explain why you should turn off logging completely in production because of its limitations: Relies on Developers Lacks Context Impacts Performance Intrigued? Bear with me and I will show you how you can still establish and maintain a healthy and useful logging strategy for your deployment pipeline, from development to production, guided by metrics. What Logging Can Do for You Developers, including myself, often write log messages because they are lazy. Why should I set a breakpoint and fire up a debugge... (more)

How Bad Outdated JavaScript Libraries Are for Page Load Time

Last week at Velocity we hosted a Birds of a Feather Session (BoF) and offered the attendees to analyze their web sites using dynaTrace Ajax Edition. Besides finding the typical performance problems (no cache settings, too many images, not minimized content, …) we found several sites that had one interesting problem in common: OLD VERSIONS of  JavaScript libraries such as YUI, jQuery or SPRY. Why are outdated JavaScript Libraries a problem? JavaScript libraries such as jQuery provide functions that make it easy for web developers to achieve certain things, e.g.: change the style of certain DOM elements. Most of these libraries therefore provide methods called $, $$ or find that allow finding DOM elements by ID, Tag Name, CSS Class Name or specific DOM attribute values. The following is a screenshot of the Performance Report analyzing the Boston Bruins Page on msn.fo... (more)