Welcome!

Machine Learning Authors: Ed Featherston, Elizabeth White, Dan Blacharski, Liz McMillan, William Schmarzo

Related Topics: Machine Learning , Java IoT

Machine Learning : News Item

dynaTrace AJAX Edition 3.0 Released

Free next-generation browser diagnostics - part 1

With its latest release, dynaTrace updates its Product Suite for Deep Dive, Automated Cross-Browser Web Performance Optimization with two products:

  • dynaTrace AJAX Edition 3.0 is the free standalone tool that has been downloaded by 30k+ users so far supporting both Firefox (3.6, 4.0) and Internet Explorer (6, 7 & 8) 8)
  • dynaTrace Development Team Edition is the Premium Upgrade and provides extended automation, end-to-end performance and automated regression analysis for modern Web 2.0 Applications

In this first part of the series I focus on the capabilities that support web developers and testers on their local workstation when analyzing performance or problems in Internet Explorer and Firefox. A second part will cover the benefits of the Premium Upgrade for Agile Development Teams when automating performance and regression analysis.

dynaTrace AJAX Edition 3.0 – Capabilities that can save your day
As a Web Developer and Tester of Web Applications it is challenging to keep up with verifying that the latest changes to your web site work well and don’t impact web page performance across different browsers. dynaTrace AJAX Edition 3.0 comes with the features and capabilities you need to make your day-to-day activity much easier

Improve Page Load Times
As we’ve come to understand the actual impact of Page Load Time on end user behavior (confirmed by studies from Microsoft, Yahoo, Google and Shopzilla), accelerating Page Load Time has become a top goal for every web site. Following Best Practices from Yahoo, Google and dynaTrace on how to reduce network roundtrips, optimize browser caching and speed up JavaScript execution can significantly improve Page Load Time. dynaTrace AJAX Edition provides a Performance Report that analyzes every visited page based on these known Best Practices. This Performance Report provides different sections and gives recommendations on how to improve page load time.

Particularly in Web 2.0 Applications that leverage JavaScript and DOM Manipulations, it is common for JavaScript Execution to significantly contribute to actual Page Load Time. The dynaTrace Performance Report lists problematic JavaScript handlers and functions that have a significant performance impact on the Page Load Time. Optimizing client side code can improve Page Load Times significantly. The following screenshot shows that the Yahoo News Home Page uses a very inefficient method to lookup DOM elements by class name. The Call Trace and the Source Code view on the right show who makes these inefficient calls, making it easy to start optimizing the code:

Performance Report highlights JavaScript Execution that slows down Page Load Times

Performance Report highlights JavaScript Execution that slows down Page Load Times

The other tabs in the Performance Report focus on optimizing Browser Caching, reducing Network Roundtrips and optimizing Server-Side request times. Following the guidelines in every tab of the report enable you to focus on the things that will really accelerate your page load times.

Identify Cross-Browser Issues
Firefox is the browser of choice for most web developers. The lack of tooling support for earlier versions of Internet Explorer caused many developers and also testers to do their work exclusively on Firefox. This resulted in web sites that worked well in Firefox but had issues on other browsers – especially Internet Explorer. dynaTrace AJAX Edition solves this problem by providing a single tool that captures the same in-depth browser diagnostics data on Internet Explorer 6, 7 & 8 and Firefox 3.6 and 4 (Support for Internet Explorer 9 will follow soon). Having one tool that provides insight into JavaScript execution, DOM manipulations, Rendering activities and Network behavior on these browsers makes it easy to identify cross-browser problems and enables developers to optimize their code.

The following screenshot shows the performance report of the same pages for both Firefox and Internet Explorer. The high-level analysis shows the difference in load times, as well as certain characteristics such as number of network requests, redirects or cached vs. un-cached resources.

Yahoo News seems to be optimized for Internet Explorer with additional roundtrips, redirects and uncached resources causing problems in Firefox

Yahoo News seems to be optimized for Internet Explorer with additional roundtrips, redirects and uncached resources causing problems in Firefox

Not only can we compare high-level performance metrics like those shown in the screenshot above. We can also compare the actual Network Requests, Caching Behavior and JavaScript execution on each browser and browser version. This helps us discover whether certain settings – such as Cache-Control – have not been set for a certain browser or if the included JavaScript libraries work correctly across browsers.

Optimize Page Rendering
Optimizing Page Load Time is only one aspect of accelerating web site performance. The most important key performance indicator is the First Impression Time. That is the time it takes from when a user enters a URL or clicks on a link until that user actually sees a visual response on the screen. In order to optimize Page Rendering you need information on when Rendering actually happens. dynaTrace provides this information for both Internet Explorer and Firefox. The Timeline View has a Rendering Column that shows when the browser executed certain Rendering tasks. The following screenshot actually shows us that the Yahoo News Page actually uses progressive rendering. This means that the HTML Content is flushed out early on, allowing the browser to already parse and display some of the HTML before the complete HTML document was downloaded:

Rendering happens while the initial HTML Document gets downloaded. Rendering also happens when additional resources such as images and css files get downloaded

Rendering happens while the initial HTML Document gets downloaded. Rendering also happens when additional resources such as images and css files get downloaded

Optimizing the First Impression Time (time of first Drawing event) and also optimizing Rendering activity on the page in general are now possible across browsers by using dynaTrace AJAX Edition.

JavaScript/DOM Tracing
The key capability of dynaTrace is not only to identify long running JavaScript handlers. dynaTrace traces all JavaScript executions including calls to the DOM (Document Object Model) as well as calls to XHR (XmlHttpRequest).

This deep tracing provides several benefits:

  • Unlike a profiler, dynaTrace actually sees the individual method calls with method arguments and return values. Outliers can therefore be identified and are not hidden in average values
  • Unlike a debugger, dynaTrace is low overhead and thus doesn’t impact execution time of the JavaScript significantly. This allows us to analyze the exact execution behavior of timers and intervals
  • Unlike other tools, dynaTrace actually traces calls into the DOM. The DOM is the most performance-critical component in the browser. Read and Write access can be very expensive and should be optimized.

When analyzing JavaScript/DOM Traces we use the dynaTrace PurePath view. We can open this view through the Context Menu on a slow JavaScript method listed in the Performance Report. Another option is to double click on a JavaScript execution block shown in the Timeline. The following screenshot shows a JavaScript trace of the slow running getElementsByClassName functions that are called on the Yahoo News Page. This method iterates through all DOM Elements. In order to do that it queries all elements using getElementsByTagName.

The yellow arrows indicate read, write property access as well as method calls on the DOM

The yellow arrows indicate read, write property access as well as method calls on the DOM

In addition to looking at Traces of individual JavaScript handlers, dynaTrace also provides the Hotspot view. The Hotspot view analyzes all JavaScript, DOM and Rendering activity on a given page and shows which methods have the highest execution time contribution and which methods are called most frequently. As the underlying data of this presented information are the Deep-Dive Traces, we can pick a method that we want to analyze further, for example, who calls a method with particular parameters or who calls a method too often:

In the Hotspot View we see which JavaScript, DOM or Rendering activity contributes how much to the overall page load time. Back Traces help to identify the caller

In the Hotspot View we see which JavaScript, DOM or Rendering activity contributes how much to the overall page load time. Back Traces help to identify the caller

Deep tracing that includes JavaScript, DOM and method arguments comes with low overhead. The overhead of the actual JavaScript instrumentation is shown in the PurePath view for every loaded JavaScript file. The overhead when collecting the actual method execution depends on the number of JavaScript and DOM calls. The depth of tracing is configurable through the preferences and gives you full control on how much data to collect. Caution: In Firefox, tracing DOM calls comes with a larger performance penalty than in Internet Explorer as it requires disabling DOM Quick Stubs.

Automate Web Performance Optimization
We have already blogged about how to use dynaTrace AJAX Edition in a Continuous Integration environment by integrating it with your Selenium, Watir, Silk, QTP or WebDriver scripts. The idea is that whenever you have a functional test that actively drives a browser instance you can add dynaTrace AJAX into the mix and let dynaTrace record the browser activity driven by the test tool.

dynaTrace Ajax captures browser activity driven by your functional testing tool

dynaTrace Ajax captures browser activity driven by your functional testing tool

The great news with dynaTrace AJAX Edition 3 is that this can now be leveraged for both Internet Explorer and Firefox enabling you to automate performance analysis across browsers without having to modify your tests scripts. If you are interested in automation please check out the following posts:

Compare with Your Competition
Following Best Practices on Web Performance Optimization as defined by Yahoo, Google and dynaTrace is a good thing, but doesn’t guarantee that you are ahead of your competition when it comes to web site performance. Best Practices are also not always applicable for all web sites. News Sites for instance have more images on a page that have a short expiration. Therefore it is OK that caching is used differently than on eCommerce sites where product images don’t change as frequently as the latest World News. Therefore dynaTrace not only allows you to compare your results against Best Practices but also against live websites. When you launch dynaTrace you will be prompted for your dynaTrace Community Account in order to download Live Performance Data

Enter your dynaTrace Community Credentials to get access to real live performance data

Enter your dynaTrace Community Credentials to get access to real live performance data

When opening the Performance Report you now have the option to compare your captured performance data with data from the Top Alexa websites. There are more categories to come over the next few months such as eCommerce, News, … The following screenshot shows the Performance Report comparing the results of Yahoo News to those of the Alexa 1000.

Compare your own results in the different performance categories with performance data captured daily from real websites

Compare your own results in the different performance categories with performance data captured daily from real websites

Comparing your performance metrics with real-life data gives you additional input on the areas on which you want to focus your optimization efforts. If your competition spends less time in Client Side JavaScript you may want to focus on optimizing your own JavaScript code. If you see that you are already doing a good job comparatively in leveraging the browser cache – even though you just scored Rank C – it is better to focus on other areas first.

Want to know more about dynaTrace AJAX Edition?
Start by downloading the free dynaTrace AJAX Edition and optimize your web pages by following the results of the Performance Report. Make yourself familiar with the deep diagnostics capabilities of dynaTrace AJAX by checking out the Top Client Side Performance Problems that have been solved with this tool.

And if you’re organization needs enterprise-class extended automation, end-to-end performance and automated regression analysis for modern Web 2.0 Applications, then you should read part two outlining the Premium Extensions to dynaTrace AJAX that provide what you need.

Related reading:

  1. Premium AJAX Edition 3 Extensions – Next Generation Web Performance Optimization– PART II // If you are serious about Web Development then I...
  2. Update dynaTrace AJAX Edition to get Rendering Times on ALL versions of Internet Explorer Analyzing Rendering Activity is one of the many features of...
  3. Elevating Web- and Load-Testing with MicroFocus SilkPerformer Diagnostics powered by dynaTrace MicroFocus and dynaTrace recently announced “SilkPerformer Assurance” and with that...
  4. dynaTrace Firefox Closed Beta Program started We had quite a number of people showing interest in...
  5. Sneak Peak on Firefox support with dynaTrace We have received lots of great feedback on our deep...

More Stories By Andreas Grabner

Andreas Grabner has been helping companies improve their application performance for 15+ years. He is a regular contributor within Web Performance and DevOps communities and a prolific speaker at user groups and conferences around the world. Reach him at @grabnerandi

@CloudExpo Stories
The need for greater agility and scalability necessitated the digital transformation in the form of following equation: monolithic to microservices to serverless architecture (FaaS). To keep up with the cut-throat competition, the organisations need to update their technology stack to make software development their differentiating factor. Thus microservices architecture emerged as a potential method to provide development teams with greater flexibility and other advantages, such as the abili...
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an overview of the evolution of the Internet and the Database and the future of their combination – the Blockchain. Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settle...
Product connectivity goes hand and hand these days with increased use of personal data. New IoT devices are becoming more personalized than ever before. In his session at 22nd Cloud Expo | DXWorld Expo, Nicolas Fierro, CEO of MIMIR Blockchain Solutions, will discuss how in order to protect your data and privacy, IoT applications need to embrace Blockchain technology for a new level of product security never before seen - or needed.
The cloud era has reached the stage where it is no longer a question of whether a company should migrate, but when. Enterprises have embraced the outsourcing of where their various applications are stored and who manages them, saving significant investment along the way. Plus, the cloud has become a defining competitive edge. Companies that fail to successfully adapt risk failure. The media, of course, continues to extol the virtues of the cloud, including how easy it is to get there. Migrating...
Leading companies, from the Global Fortune 500 to the smallest companies, are adopting hybrid cloud as the path to business advantage. Hybrid cloud depends on cloud services and on-premises infrastructure working in unison. Successful implementations require new levels of data mobility, enabled by an automated and seamless flow across on-premises and cloud resources. In his general session at 21st Cloud Expo, Greg Tevis, an IBM Storage Software Technical Strategist and Customer Solution Architec...
The use of containers by developers -- and now increasingly IT operators -- has grown from infatuation to deep and abiding love. But as with any long-term affair, the honeymoon soon leads to needing to live well together ... and maybe even getting some relationship help along the way. And so it goes with container orchestration and automation solutions, which are rapidly emerging as the means to maintain the bliss between rapid container adoption and broad container use among multiple cloud host...
Blockchain is a shared, secure record of exchange that establishes trust, accountability and transparency across business networks. Supported by the Linux Foundation's open source, open-standards based Hyperledger Project, Blockchain has the potential to improve regulatory compliance, reduce cost as well as advance trade. Are you curious about how Blockchain is built for business? In her session at 21st Cloud Expo, René Bostic, Technical VP of the IBM Cloud Unit in North America, discussed the b...
Blockchain. A day doesn’t seem to go by without seeing articles and discussions about the technology. According to PwC executive Seamus Cushley, approximately $1.4B has been invested in blockchain just last year. In Gartner’s recent hype cycle for emerging technologies, blockchain is approaching the peak. It is considered by Gartner as one of the ‘Key platform-enabling technologies to track.’ While there is a lot of ‘hype vs reality’ discussions going on, there is no arguing that blockchain is b...
Imagine if you will, a retail floor so densely packed with sensors that they can pick up the movements of insects scurrying across a store aisle. Or a component of a piece of factory equipment so well-instrumented that its digital twin provides resolution down to the micrometer.
"IBM is really all in on blockchain. We take a look at sort of the history of blockchain ledger technologies. It started out with bitcoin, Ethereum, and IBM evaluated these particular blockchain technologies and found they were anonymous and permissionless and that many companies were looking for permissioned blockchain," stated René Bostic, Technical VP of the IBM Cloud Unit in North America, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventi...
As DevOps methodologies expand their reach across the enterprise, organizations face the daunting challenge of adapting related cloud strategies to ensure optimal alignment, from managing complexity to ensuring proper governance. How can culture, automation, legacy apps and even budget be reexamined to enable this ongoing shift within the modern software factory? In her Day 2 Keynote at @DevOpsSummit at 21st Cloud Expo, Aruna Ravichandran, VP, DevOps Solutions Marketing, CA Technologies, was jo...
While some developers care passionately about how data centers and clouds are architected, for most, it is only the end result that matters. To the majority of companies, technology exists to solve a business problem, and only delivers value when it is solving that problem. 2017 brings the mainstream adoption of containers for production workloads. In his session at 21st Cloud Expo, Ben McCormack, VP of Operations at Evernote, discussed how data centers of the future will be managed, how the p...
"Since we launched LinuxONE we learned a lot from our customers. More than anything what they responded to were some very unique security capabilities that we have," explained Mark Figley, Director of LinuxONE Offerings at IBM, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
When shopping for a new data processing platform for IoT solutions, many development teams want to be able to test-drive options before making a choice. Yet when evaluating an IoT solution, it’s simply not feasible to do so at scale with physical devices. Building a sensor simulator is the next best choice; however, generating a realistic simulation at very high TPS with ease of configurability is a formidable challenge. When dealing with multiple application or transport protocols, you would be...
Nordstrom is transforming the way that they do business and the cloud is the key to enabling speed and hyper personalized customer experiences. In his session at 21st Cloud Expo, Ken Schow, VP of Engineering at Nordstrom, discussed some of the key learnings and common pitfalls of large enterprises moving to the cloud. This includes strategies around choosing a cloud provider(s), architecture, and lessons learned. In addition, he covered some of the best practices for structured team migration an...
In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and simple way to introduce Machine Leaning to anyone and everyone. He solved a machine learning problem and demonstrated an easy way to be able to do machine learning without even coding. Raju Shreewastava is the founder of Big Data Trunk (www.BigDataTrunk.com), a Big Data Training and consulting firm with offices in the United States. He previously led the data warehouse/business intelligence and B...
Smart cities have the potential to change our lives at so many levels for citizens: less pollution, reduced parking obstacles, better health, education and more energy savings. Real-time data streaming and the Internet of Things (IoT) possess the power to turn this vision into a reality. However, most organizations today are building their data infrastructure to focus solely on addressing immediate business needs vs. a platform capable of quickly adapting emerging technologies to address future ...
In his general session at 21st Cloud Expo, Greg Dumas, Calligo’s Vice President and G.M. of US operations, discussed the new Global Data Protection Regulation and how Calligo can help business stay compliant in digitally globalized world. Greg Dumas is Calligo's Vice President and G.M. of US operations. Calligo is an established service provider that provides an innovative platform for trusted cloud solutions. Calligo’s customers are typically most concerned about GDPR compliance, application p...
You know you need the cloud, but you’re hesitant to simply dump everything at Amazon since you know that not all workloads are suitable for cloud. You know that you want the kind of ease of use and scalability that you get with public cloud, but your applications are architected in a way that makes the public cloud a non-starter. You’re looking at private cloud solutions based on hyperconverged infrastructure, but you’re concerned with the limits inherent in those technologies.
Is advanced scheduling in Kubernetes achievable?Yes, however, how do you properly accommodate every real-life scenario that a Kubernetes user might encounter? How do you leverage advanced scheduling techniques to shape and describe each scenario in easy-to-use rules and configurations? In his session at @DevOpsSummit at 21st Cloud Expo, Oleg Chunikhin, CTO at Kublr, answered these questions and demonstrated techniques for implementing advanced scheduling. For example, using spot instances and co...