The Muse Test Framework is designed around extensibility – and specifically around the ease of adding new types of steps and value sources. The intent was to make it easy for 3rd parties to add new abilities to the framework and have those abilities seamlessly integrated into the MuseIDE without much effort. This made it a natural choice for us when looking to develop new load testing capabilities beyond our current tools such as Load Tester.
This first version of the OkHttp extension is very simple – almost embarassingly so. It provides just a handful of new … Continue reading »
For the past week I’ve been testing out the performance of the new Google Pagespeed module for Apache, mod_pagespeed, and with the memory locking option turned on, the performance was a definite improvement for static pages. The fact is, though, there are much faster web servers for static content, and CDNs make scaling static pages very, every easy. Standard testing procedure, though, is to start as simple as possible, and test every variation separately. The next step, then is to test how Pagespeed works on dynamic pages.
As before, this new test uses our own corporate site, except now … Continue reading »
Looking for the snappiest, fastest web server software available on this here internet? So were we. Valid, independent, non-synthetic benchmarks can be difficult to find. Of course, we all know that benchmarks don’t tell us everything we need to know about real-world performance; but what’s the fun of having choices if we can’t pick the best?
Exactly. I decided to do a little research project of my own.
Test Plan
I selected for this exercise recent (as of October 2011) versions of Apache, Nginx, Lighttpd, G-WAN, and IIS — a list that includes the most popular web servers as well as web servers … Continue reading »
This tip is more for those users who have developed a sophisticated data-crunching interface to their app. On one screen, for simplicity, the app gives a long list of data, without pagination controls being created by the user (such as a “View All” feature). To keep it pretty, each line has a visual icon or some surrounding images. Sound familiar? For example, let’s say the list is created by a testing system, indicating which tests were passed and which failed. The list may look something like:
For this example, we’ve created a few lengthy files to measure IE’s rendering performance. They … Continue reading »
Note: This is Part 4 of an ongoing series on Drupal performance and load testing. If you haven’t already, read the introduction.
Summary
We measured Drupal’s performance with respect to database size, demonstrating flat performance regardless of the size of the database. We also got some good data demonstrating Drupal’s behavior with caching.
Procedure
We re-created our previous test platform: a stock Drupal installation on an Amazon Elastic Cloud m1.large instance with both the Alternative PHP Cache (APC) and Drupal’s built-in caching capabilities. In this test, however, instead of scaling the number of simultaneous users, we instead held the test at 400 … Continue reading »
Note: This is Part 2 of an ongoing series on Drupal performance and load testing. If you haven’t already, read the introduction.
Summary
We measured Drupal’s performance with a naive and recommended configuration, and again using the Pantheon Drupal Platform, demonstrating a better than 15x improvement in performance.
Procedure
We created a Drupal installation on the Amazon Elastic Cloud, which allows us to start and customize Drupal in a matter of minutes. For these tests we used Amazon’s “Large” 64bit instance, which corresponds roughly to a dual-core machine with 7.5 GB of memory.
Our baseline platform consisted of a stock Fedora Core 8 with … Continue reading »
In the past, we’ve had plenty of discussion on how performance effects user experience, and how that relates to conversions. But, can a server’s performance effect it’s security?
During a previous test, we had a customer whose site included a contact form. The user would complete the contact form in their browser, and the application server would convert this response into an e-mail and send it through a mail server. The contact form, coupled with the use of a CAPTCHA, helps to cut back on undesirable messages. During our testing, we discovered that the mail server was becoming overloaded (at only … Continue reading »
At Web Performance, we’re all about measuring and optimizing web applications. This quarter we decided to test a variety of Drupal configurations, starting with the most basic (unpack the drupal tarball into /var/www and run) and collecting benchmarks with increasingly sophisticated systems using optimized LAMP stacks and even a dual-server caching configuration.
For our test scenario, we imagined that we had just started a small drupal-based blog when a popular website linked to one of our stories and directed massive traffic onto our server. These visitors read stories, followed interesting links, and posted comments of their own. … Continue reading »
I ran across this article yesterday. It is nearly two years old, but the content is still entirely relevant. If you are building a system that needs to scale out to handle a large load, then you’ve probably already read this or something similar…if not, then it is worth your time.
What is the relevance to Load Testing, you ask? In section 5 author, Simon Brown, says”
“… set measurable goals throughout the system, verify and measure the real performance and consider performance at all stages of the project.”
For a project manager, a key part of the job is reducing risk … Continue reading »
From a load testing perspective, we are not generally concerned with Javascript performance – since it affects client-side rendering time and therefore has little relationship to load. However, we do see a lot of sites that could benefit greatly from improved Javascript performance – especially reducing the size of their Javascript files. Google has a relatively new project, Closure Compiler, that optimizes JavaScript code to reduce size and improve performance.
If you’ve tried the Closure Compiler, give us a shout. We’d love to hear about your results!
Chris
Chief Engineer
ChrisWhen his dad brought home a Commodore PET computer, … Continue reading »