Load Testing in the Cloud

Feed aggregator

Web Performance Optimization Use Cases – Part 3 Automation

In the first and second post of this series I discussed benchmarking and different approaches towards optimization of web application. As already mentioned in the last post, as soon as you get used to working with Key Performance Indicators you will want to automatically monitor them. ShowSlow is a great example of how you [...]
Categories: Load Testing Blogs

Webinar about the Transformation of APM on October 28th (help in German)

Following up on the webinar The Transformation of APM (download the recorded video) I will host another Webinar on the same topic tomorrow, October 28th at 10 AM CEST. I am happy to kick-off the webinar with an introduction about APM and with a Live Demo of dynaTrace in the realm of APM and BTM. Following my [...]
Categories: Load Testing Blogs

Web Performance Optimization Use Cases – Part 2 Optimization

In the last post I discussed benchmarking as the first use case for Web Performance Optimization (WPO). This time I will take a closer look at optimization. After we have discovered how our site behaves compared to our competition – or any reference we might want to benchmark against – we want to learn how [...]
Categories: Load Testing Blogs

Presenting Top Web 2.0 Performance Problems at WebTechCon 2010 in Mainz, Germany

WebTech Conference 2010 takes place in Mainz, Germany from October 11-13. This conference covers latest developments in Web Development, Security, eCommerce, Mobile Web … Check out the great list of speakers, sessions and workshops. We got invited to host a session about Best Practices in Web 2.0 Development and how to avoid the most common performance [...]
Categories: Load Testing Blogs

Clutch Time – A New Web Performance Metric?

Recently there has been a lot of discussion on the usefulness of current web performance metrics. We all got used to First Impression, onLoad and Fully Loaded time. With dynaTrace Ajax Edition we also provide all this metrics. Joshua Bixby wrote a very good post an why they do not really tell us what we [...]
Categories: Load Testing Blogs

Web Performance Optimization Use Cases – Part 1 Benchmarking

Web Performance Optimization (WPO) constitutes of a set of activities targeted at improving the performance of web applications. First coined by Steve Souders WPO is developing into a growing industry. Every month new companies and projects offering web performance services emerge. WPO is much more than performance analysis; however, performance analysis is a central part in [...]
Categories: Load Testing Blogs

Integrated Cloud based Load Testing and Performance Management from Keynote and dynaTrace

Watch the 7 Minute Walk-Through Video that guides you through the Integration described in this blog post. Load Testing has traditionally been done In-House with load-testing tools using machines in your test center to generate HTTP traffic against the application needing to be tested for high volume transactions. With agile development practices, shorter release cycles and higher [...]
Categories: Load Testing Blogs

End-to-End Monitoring and Load Testing with Keynote and dynaTrace

Watch the 6 Minute Walk-Through Video that guides you through the Integration described in this blog post. We’ve learned from recent studies that performance has a direct impact on end-user behavior and revenue. Load Testing is therefore critical to ensure that your application can withstand peak load during online rush hours. Continuous Monitoring of the live [...]
Categories: Load Testing Blogs

Week 38 – Transactions in a JPA World

The use of transactions is a cornerstone when building database applications. However in our daily work, we often do not really care much about them. In many cases they are handled implicitly for us by the (J EE) container or application framework – such as Spring – we are using. We rely on these frameworks [...]
Categories: Load Testing Blogs

Quick Start Package for dynaTrace AJAX Edition

As the Community Lead for dynaTrace and dynaTrace AJAX I get a lot of similar questions when users first start using dynaTrace. Here is a quick summary of the most frequently asked questions users asked, and problems they reported. This should be useful for all dynaTrace users out there: dynaTrace Registration and Downloads Problem: From time to [...]
Categories: Load Testing Blogs

Top 3 Performance Problems in Custom Microsoft CRM Applications

After spending a lot of time focusing on Client-Side Web 2.0 Performance Problems it is time to focus on specific Server-Side Performance Problems. Last week I worked with a client that runs a custom application on Microsoft CRM 4.0 and experienced performance problems in their test environment. Individual web requests to query or update data [...]
Categories: Load Testing Blogs

Top 10 Client-Side Performance Problems in Web 2.0

Inspired by the Top 10 Performance Problems post which focuses on Server-Side performance problems taken from companies such as Zappos, Thomson, Monster and Novell I came up with the Top 10 Client-Side performance problems in Web 2.0 applications I’ve seen when working with our dynaTrace AJAX Edition users. Symptom: JavaScript blocking resource downloads and slowing page [...]
Categories: Load Testing Blogs

Starting anew

Performance & Open Source - Fri, 10/22/2010 - 6:31pm

After 18 years at Sun (the last 6 at Oracle), I finally called it quits. Last week, I began anew at Yahoo!  I will still be focused on performance, but this time on end user performance.

At Sun, we were extremely focused on server-side performance. Our primary metric was throughput. We worried about scalability. Does Solaris scale on the maximum number of CPUs/threads that our largest system had ? What about the JVM ? And the appserver, and the webserver … you get the idea.

In the web world, things are quite different. The primary metric is response time. One could care less what the throughput on a particular server is – tens of thousands of servers are being deployed anyway. This mindset and architecture fascinate me. How do these large internet sites handle performance ? So I decided to find out. What better way, then to be part of one of the sites that sees the most traffic on the internet (see ComScore report).

I am part of the Exceptional Performance Team at Yahoo! This is the team that first brought YSlow to the community and is responsible for a whole host of tools to measure and analyze performance. I hope to contribute to this effort as well and of course, I will continue to blog about interesting performance issues that I encounter. Please do let me know if there are particular topics you would like to see on the Exceptional Performance blog.

 


Categories: Load Testing Blogs

Webinar: Application Performance Testing; From Conception to Gravestone

PerfTestPlus - Scott Barber - Fri, 10/22/2010 - 2:28pm
      Friday, October 29, 2010 1:00 PM EST

Gomez Webinar: Application Performance Testing: From concept to gravestone with Scott Barber and Imad Mouline. Register Here

Categories: Load Testing Blogs

Parameterizing Your Tests – Part 2

BrowserMob - Tue, 10/19/2010 - 4:44pm

BrowserMob supports the ability to pass in parameterized data in your load test scripts and some of the ways of handling this have been explained in an earlier post.
But many a time we come across scenarios which require a unique login per transaction,  such as that of a University where a unique user ID is required to fill out a college admission form. A login used once cannot be re-used in these situations. In this post, we’ll explain one way of handling parameterization for these types of scenarios.

Consider the following basic RBU script that uses a fixed username and password of ‘joe’ and ‘password’:

var selenium = browserMob.openBrowser(); browserMob.beginTransaction(); browserMob.beginStep("Step 1"); selenium.open("http://example.com/login"); selenium.type("username", "joe"); selenium.type("password", "password"); selenium.clickAndWait("login"); browserMob.endStep(); browserMob.endTransaction();

Let’s look at how we can parameterize the username and password fields ensuring that the script uses a unique username/password combination every time it runs.

To start with we need to estimate the number of logins needed per concurrent user or in other words number of estimated transactions per concurrent user during the course of the test. This, of course, depends on a lot of factors such as average page load times, average think time between steps, number of steps in the scenario, etc. Below is a sample illustration of how to calculate this number.

Number of steps in scenario = 10
Total number of intervals = 10
Length of each interval = 360 seconds
Average page load time = 3 seconds
Average think time between steps = 5 seconds
Total transaction length = Total number of steps * (Average page load time + Average think time between steps) = 80 seconds
Transactions per interval per concurrent user = Length of each interval/Total transaction length = 360/80 = 4.5 (rounding off to 5)
Total number of transactions per concurrent user for the entire test = Transactions per interval per concurrent user * Total number of intervals = 5 * 10 = 50

Since this number is based purely on the above assumptions and because the load times could vary during the actual test, it is always better to bump this number up a bit to ensure you have enough unique ids to cover all the possible transactions.

Hence, assuming we are testing with 50 concurrent users and 100 transactions per concurrent user during the course of the test, here is how we can go about with the parameterization:

var loginsPerUser = 100; var userNum = browserMob.getUserNum();  //starts from index 0 var txCount = browserMob.getTxCount();   //starts from index 1 var id = (userNum*loginperuser) + txCount; // Since the 'userNum' starts from index 0, for the first user, we just append the 'txCount' // whereas, the 'id' from above is appended for the remaining users if (userNum == 0) { var userId = 'test_' + txCount; } else { var userId = 'test_' + id; }

This way ‘test_1′ to ‘test_100′ will be utilized for user 1, ‘test_101′ to ‘test_200′ will be utilized for user 2 and so on. The biggest advantage of this method is that there is no need to reference any external csv file for the parameterization although you do need to ensure that these logins exist in your database ahead of the test.

Here is the parameterized script:

var selenium = browserMob.openBrowser(); browserMob.beginTransaction(); browserMob.beginStep("Step 1"); selenium.open("http://example.com/login"); selenium.type("username", userId); selenium.type("password", "password");  //we are assuming that the password is the same for all users selenium.clickAndWait("login"); browserMob.endStep(); browserMob.endTransaction();

Tweet This Post 

Categories: Load Testing Blogs

Be prepared for Christmas Traffic

LoadImpact - Wed, 10/13/2010 - 8:28am

Christmas season is usually the busiest and most profitable period for online retailers and travel related sites. According to Comscore.com, in 2009, November's internet traffic to e-commerce sites grew by up to 47% against the base period (Aug 31st to Nov 1st). With a fast recovering economy, website owners can expect a greater increase in internet traffic during the year-end holiday season.

 

This might sound like good news to e-retailers but a sudden increase in traffic creates stress on a server and slows a website down. Moreover, poorly designed webpages that are not optimized for speed further prolong load times. Even  a one second increase in load-time from three to four seconds will result in a dramatic decrease in customer conversion rate. Key findings from the "Consumer Response to Travel Site Performance" study conducted by PhoCusWright and Akamai showed that 57% of online shoppers will wait three seconds or less before abandoning the site and that 65% of 18-24 years old expect a site to load in two seconds or less. This means e-retailers actually lose many potential customers without even realizing it.

 

In the e-commerce market where profit margin is thin and competition is tough, minor tweaks that make website load faster will give retailers an edge over their competitors. Webmasters can choose between a variety of free online tools to check their website's performance and also get useful tips. Google's Page Speed and Yahoo's YSlow are two more popular choices that analyze web pages and suggest ways to improve their performance based on a set of rules for high performance web pages. Both services provide a grade for the website which webmasters can use to benchmark their website against the competitor's. Good practices as well as suggestions are also give and the services are free to use.

 

The good news is that there is still some time left before the Christmas traffic hits and webmasters can further optimize their website to prevent a "winner takes all" scenario where a few fast loading e-retailers account for the bulk of the online sales.

 

P.S.: We have a Christmas promotion going on here

Categories: Load Testing Blogs

Python - Shorten a URL Using Google's Shortening Service (goo.gl)

Corey Goldberg - Fri, 10/08/2010 - 10:02am

Using Python to shorten a URL with Google's shortening service (goo.gl):

#!/usr/bin/python # Corey Goldberg - 2010 import json import urllib import urllib2 def shorten(url): gurl = 'http://goo.gl/api/url?url=%s' % urllib.quote(url) req = urllib2.Request(gurl, data='') req.add_header('User-Agent', 'toolbar') results = json.load(urllib2.urlopen(req)) return results['short_url'] if __name__ == '__main__': print shorten('http://www.goldb.org/') print shorten('www.yahoo.com')

You give it a URL to shorten: shorten('http://www.goldb.org/long_url')

... and it returns a shortened URL for you: 'http://goo.gl/jh4W'

Categories: Load Testing Blogs

How to Automate Google Analytics Analysis

This is a two part article – also read Combining Analytics with Performance Management Data. I use Google Analytics every day to look at Key Web Performance Metrics to answer questions like: How many people visit our blog? I look at the Visitor Overview which shows me how many Visitors and Unique Visitors we have Did they find us [...]
Categories: Load Testing Blogs

Ajax Best Practices: Reduce and Aggregate similar XHR calls

My mobile contract is expiring soon, so I went online and checked the different mobile companies for their offerings. All of these sites have a page where you get an overview of all the different phone models available. One one page I noticed that the list of phones started with an empty grid – and [...]
Categories: Load Testing Blogs

Running remote Unix commands from LoadRunner

Performance Testing with LoadRunner Focus - Mon, 08/23/2010 - 11:36pm
If you need to run a Unix command on a remote server with a LoadRunner script (running on Windows), then there is a neat program called plink that you will find very useful. If you use any variety of Unix, you will probably already by using PuTTY; well plink is is distributed with PuTTY, and [...]
Categories: Load Testing Blogs

Improve Performance

Looking for a simple way to speed up your site? We found a cool performance solution that can deliver HUGE improvement without rewriting your web application. aiCache web application acceleration is a new partner with LoadStorm because they can help our clients where we cannot. It's a great alternative to buying biggers servers, implementing load balancers, or re-architecting your app.

Placing aiCache in front of your web servers increases the number of requests per second and concurrent users you can sustain by orders of magnitude - delivers in excess of 250,000 HTTP requests per second while managing hundreds of thousands of connected clients.

Woot.com uses LoadStorm for performance testing and aiCache to handle the crush of traffic. They have saved a bunch of money and eliminated time spent optimizing.

more information

New Pricing Model

Storm on Demand Users Cost
250 $9.97
500 $19.95
1,000 $39.90
5,000 $199.50
10,000 $399.00
25,000 $997.50
50,000 $1,995.00

To See All Plans & Pricing Details

Web Developers Like Us!

"Just wanted to let you know that I found your site tonight and was able to successfully create an account and run my first load test all within 45 minutes! I needed to run a small test for a personal site, but after seeing how easy this is, I will be looking at your service as an option for load testing at the company I work for. This is one of the more exciting cloud services I've found!" - Nathaniel Olson, Director of Software Development, Nexus Innovations

"Thanks for the quick reply. Great tool you guys developed, congratulations! I only complement when well deserved and this is the case here. This is perfect! Thank you very much. You guys continue to amaze me with the quality of the support you offer. Whether I spend $50 or $500 – or even nothing – you are always ready to help… and help a lot." - Virgil Olteanu, Web Architect, Studiocom

"We at Gold-mobile get a lot of bang for the buck using LoadStorm to test our mobile WAP sites. We use it because it is functional, fast and cost effective." - Steve Kallman, Release Manager, Gold Mobile