LoadStorm http://loadstorm.com Load Testing the Better Way Fri, 18 Apr 2014 22:23:30 +0000 en-US hourly 1 http://wordpress.org/?v=3.8.1 Stress Testing Drupal Commerce http://loadstorm.com/2014/04/stress-testing-drupal-commerce/?utm_source=rss&utm_medium=rss&utm_campaign=stress-testing-drupal-commerce http://loadstorm.com/2014/04/stress-testing-drupal-commerce/#comments Thu, 17 Apr 2014 13:53:38 +0000 http://loadstorm.com/?p=9243 I’ve had the pleasure of working with Andy Kucharski for several years on various performance testing projects. He’s recognized as one of the top Drupal performance experts in the world. He is the Founder of Promet Source and is a frequent speaker at conferences, as well as a great client of LoadStorm. As an example of his speaking prowess, he gave the following presentation at Drupal Mid Camp in Chicago 2014. Promet Source is a Drupal web application and website development company that offers expert services and support. They specialize in building and performance tuning complex Drupal web applications. Andy’s […]

The post Stress Testing Drupal Commerce appeared first on LoadStorm.

]]>
I’ve had the pleasure of working with Andy Kucharski for several years on various performance testing projects. He’s recognized as one of the top Drupal performance experts in the world. He is the Founder of Promet Source and is a frequent speaker at conferences, as well as a great client of LoadStorm. As an example of his speaking prowess, he gave the following presentation at Drupal Mid Camp in Chicago 2014.

Promet Source is a Drupal web application and website development company that offers expert services and support. They specialize in building and performance tuning complex Drupal web applications. Andy’s team worked with our Web Performance Lab to conduct stress testing on Drupal Commerce in a controlled environment. He is skilled at using LoadStorm and New Relic to push Drupal implementations to the point of failure. His team tells me he is good at breaking things.

In this presentation at Drupal Mid Camp, Andy explained how his team ran several experiments in which they load tested a kickstarter drupal commerce site on an AWS instance and then compared how the site performed after several well known performance tuning enhancements were applied. They compared performance improvements after Drupal cache, aggregation, Varnish, and Nginx reverse proxy.

View the below slideshare to see the summary of the importance of web performance and to see how they used LoadStorm to prove that they were able to scale Drupal Commerce from a point of failure (POF) of 100 users to 450 users! That’s a tremendous 450% improvement in scalability.

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Stress Testing Drupal Commerce appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/04/stress-testing-drupal-commerce/feed/ 0
Performance Testing Insights: Part I http://loadstorm.com/2014/04/performance-testing-insights-part/?utm_source=rss&utm_medium=rss&utm_campaign=performance-testing-insights-part http://loadstorm.com/2014/04/performance-testing-insights-part/#comments Sun, 13 Apr 2014 00:35:52 +0000 http://loadstorm.com/?p=9217 Performance Testing can be viewed as the systematic process of collecting and monitoring the results of system usage, then analyzing them to aid system improvement towards desired results. As part of the performance testing process, the tester needs to gather statistical information, examine server logs and system state histories, determine the system’s performance under natural and artificial conditions and alter system modes of operation. Performance testing complements functional testing. Functional testing can validate proper functionality under correct usage and proper error handling under incorrect usage. It cannot, however, tell how much load an application can handle before it breaks or […]

The post Performance Testing Insights: Part I appeared first on LoadStorm.

]]>
Performance Testing can be viewed as the systematic process of collecting and monitoring the results of system usage, then analyzing them to aid system improvement towards desired results. As part of the performance testing process, the tester needs to gather statistical information, examine server logs and system state histories, determine the system’s performance under natural and artificial conditions and alter system modes of operation.

Performance testing complements functional testing. Functional testing can validate proper functionality under correct usage and proper error handling under incorrect usage. It cannot, however, tell how much load an application can handle before it breaks or performs improperly. Finding the breaking points and performance bottlenecks, as well as identifying functional errors that only occur under stress, requires performance testing.

The purpose of Performance testing is to demonstrate that:

1. The application processes required business process and transaction volumes within specified response times in a real-time production database (Speed).

2. The application can handle various user load scenarios (stresses), ranging from a sudden load “spike” to a persistent load “soak” (Scalability).

3. The application is consistent in availability and functional integrity (Stability).

4. Determination of minimum configuration that will allow the system to meet the formal stated performance expectations of stakeholders

When should I start testing and when should I stop?

When to Start Performance Testing:

A common practice is to start performance testing only after functional, integration, and system testing are complete; that way, it is understood that the target application is “sufficiently sound and stable” to ensure valid performance test results. However, the problem with the above approach is that it delays performance testing until the latter part of the development lifecycle. Then, if the tests uncover performance-related problems, one has to resolve problems with potentially serious design implications at a time when the corrections made might invalidate earlier test results. In addition, the changes might destabilize the code just when one wants to freeze it, prior to beta testing or the final release.
A better approach is to begin performance testing as early as possible, just as soon as any of the application components can support the tests. This will enable users to establish some early benchmarks against which performance measurement can be conducted as the components are developed.

When to Stop Performance Testing:

The conventional approach is to stop testing once all planned tests are executed and there is consistent and reliable pattern of performance improvement. This approach gives users accurate performance information at that instance. However, one can quickly fall behind by just standing still. The environment in which clients will run the application will always be changing, so it’s a good idea to run ongoing performance tests. Another alternative is to set up a continual performance test and periodically examine the results. One can “overload” these tests by making use of real world conditions. Regardless of how well it is designed, one will never be able to reproduce all the conditions that application will have to contend with in the real-world environment.

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Performance Testing Insights: Part I appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/04/performance-testing-insights-part/feed/ 0
Infographic: Web Performance Impacts Conversion Rates http://loadstorm.com/2014/04/infographic-web-performance-impacts-conversion-rates/?utm_source=rss&utm_medium=rss&utm_campaign=infographic-web-performance-impacts-conversion-rates http://loadstorm.com/2014/04/infographic-web-performance-impacts-conversion-rates/#comments Wed, 09 Apr 2014 15:46:37 +0000 http://loadstorm.com/?p=9187 There are many companies that design or re-design websites with the goal of increasing conversion rates. What do we mean by conversion rates? SiteTuners defines Conversion Rate as: “The percentage of landing page visitors who take the desired conversion action.” Included in this list are completing a purchase, filling out an information form, or donating to the cause. Almost all companies focus on the design, look, and layout of a website when attempting to increase conversion rates. However, we at LoadStorm want to draw more attention to the role that web performance plays in conversions. Many studies have conclusively shown […]

The post Infographic: Web Performance Impacts Conversion Rates appeared first on LoadStorm.

]]>
There are many companies that design or re-design websites with the goal of increasing conversion rates. What do we mean by conversion rates? SiteTuners defines Conversion Rate as: “The percentage of landing page visitors who take the desired conversion action.” Included in this list are completing a purchase, filling out an information form, or donating to the cause.

Almost all companies focus on the design, look, and layout of a website when attempting to increase conversion rates. However, we at LoadStorm want to draw more attention to the role that web performance plays in conversions. Many studies have conclusively shown that a delay in page load time will negatively affect conversions, check out our latest infographic for a summary of the statistics!

Conversion Infographic Final

 

Sources:
1. http://www.aberdeen.com/Aberdeen-Library/5136/RA-performance-web-application.aspx
2. https://econsultancy.com/blog/10936-site-speed-case-studies-tips-and-tools-for-improving-your-conversion-rate
3. http://www.globaldots.com/how-website-speed-affects-conversion-rates/
4. http://www.crestechglobal.com/wp-content/uploads/2013/10/WhitePaper_AgileBottleneck_Performance.pdf
5. http://www.webperformancetoday.com/2013/12/11/slower-web-pages-user-frustration/
6. http://kylerush.net/blog/meet-the-obama-campaigns-250-million-fundraising-platform
7. http://www-01.ibm.com/software/th/collaboration/webexperience/index.html

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Infographic: Web Performance Impacts Conversion Rates appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/04/infographic-web-performance-impacts-conversion-rates/feed/ 0
Web Performance News for the Week of March 24, 2014 http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-24-2014/?utm_source=rss&utm_medium=rss&utm_campaign=web-performance-news-for-the-week-of-march-24-2014 http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-24-2014/#comments Fri, 28 Mar 2014 21:23:20 +0000 http://loadstorm.com/?p=8750 A Look Back at Healthcare.gov The period of time during which individuals are able to take part in the open enrollment end March 31, 2014. The amount of publicity Healthcare.gov received in October last year drew in numerous discussions. The situation has settled down and now we can look back with a clearer picture. Complex System Healthcare.gov was more than just a website. It’s a front-end for an entire set of systems interconnected to exchange data. The system has to make requests to a handful of other agencies checking for citizenship, financial eligibility, IRS, Homeland Security, SSA, etc. Because of […]

The post Web Performance News for the Week of March 24, 2014 appeared first on LoadStorm.

]]>
A Look Back at Healthcare.gov

The period of time during which individuals are able to take part in the open enrollment end March 31, 2014. The amount of publicity Healthcare.gov received in October last year drew in numerous discussions. The situation has settled down and now we can look back with a clearer picture.

Complex System

Healthcare.gov was more than just a website. It’s a front-end for an entire set of systems interconnected to exchange data. The system has to make requests to a handful of other agencies checking for citizenship, financial eligibility, IRS, Homeland Security, SSA, etc. Because of the multiple layers Healthcare.gov needed such as:

  • Bank level authentication and encryption.
  • Verification of identity and identity.
  • Granting insurance companies access to advertise plans.
  • Calculation of federal subsidy.
  • Managing and storing all the application data.

These were just some of the situations that made the back-end component of Healthcare.gov struggle. In addition, political interest required the site to do the enrollment upfront in order to show the subsidized price to reduce the sticker shock to the American public.

Lack of Proper Testing

Initially the contractor’s built their system to handle 50,000 people using it at the same time. The number was based on the roll out of the Massachusetts version of the site a number of years ago. When launching a new online system, the peak load will often happen on the first day of launch. Without proper stress testing, many systems will drop dead due to the flood of traffic. For examples of this, Intechnica wrote a blog listing 15 examples of high profiled companies having their website crash due to lack of testing. The lack of QA and proper testing before the live launch of Healthcare.gov was a nightmare for user experience. The multi-hour wait times, blank menus, and so called “prison glitches” which stopped a user from moving forward until they specified how long they had been incarcerated, despite never being incarcerated. The administration expected more states to make their own exchanges to reduce workload on the federal system. The exact opposite happened. Over 60% of the country is coming to the federal exchange instead of a state-run one.

Project Management & Communication Problems

Another failure was also lack of communication. The front end of Healthcare.gov was made by one company, and the back end made by another. They did not adequately communicate with one another during development, so issues have arisen based on the poor communication between the two parts.
The projection of the project was beyond optimistic. A web application of this scale being rolled out for the whole nation isn’t going to be finished. The term finished doesn’t fit too well with software development these days. The publicity to urge millions of Americans to sign up the first day was a standard that was unrealistic especially when the contract expected Healthcare.gov to be flawless on October 1.

Patching and Fixing

Since the launch of Healthcare.gov, the level of pressure to improve the web application has been significant. There is still work being done to improve the system and enhance user experience. The new management system has improved the site stability by lowering the error rate below 1% and allowing a capacity of 50,000 concurrent users.Below are charts and graphs to see the progress of Healthcare.gov after the first month of launch.
Screen Shot 2014-03-28 at 4.23.27 PM

Screen Shot 2014-03-28 at 4.23.53 PM

Screen Shot 2014-03-28 at 4.23.58 PM

Screen Shot 2014-03-28 at 4.24.19 PM

Screen Shot 2014-03-28 at 4.24.27 PM

Screen Shot 2014-03-28 at 4.24.56 PM

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Web Performance News for the Week of March 24, 2014 appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-24-2014/feed/ 0
Web Performance News for the Week of March 17, 2014 http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-17-2014/?utm_source=rss&utm_medium=rss&utm_campaign=web-performance-news-for-the-week-of-march-17-2014 http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-17-2014/#comments Fri, 21 Mar 2014 17:14:15 +0000 http://loadstorm.com/?p=8669 Does Adblock improve your load time? An essential rule is to have ad banners displayed after the main content is displayed. In terms of perception, users wont notice the banner until they find the content they’re looking for on the page. While your web page will most likely download less data, your perception of speed isn’t likely to fluctuate drastically due to the adblock extension. Perhaps testing this would be an interesting experiment! How does adblock work? Adblock takes the div of the ad and gives it a height of 0. You can test this by putting a mini ad […]

The post Web Performance News for the Week of March 17, 2014 appeared first on LoadStorm.

]]>
Does Adblock improve your load time?

An essential rule is to have ad banners displayed after the main content is displayed. In terms of perception, users wont notice the banner until they find the content they’re looking for on the page. While your web page will most likely download less data, your perception of speed isn’t likely to fluctuate drastically due to the adblock extension. Perhaps testing this would be an interesting experiment!

How does adblock work?

Adblock takes the div of the ad and gives it a height of 0. You can test this by putting a mini ad on your site and looking at the source code by switching adblock on and off. When the adblock is on, you can display a message that basically says if this height=0, then display a prompt or an alert telling the user that they have adblock on.

Even if loaded correctly, certain HTML elements are still hidden from the page especially if the element class=Ad.

ad
For example, if youI had a whole bunch of images for a page called “apparel design”, and abbreviated them to AD very few of your images will display if you have adblock. AdBlock uses a pretty simple logic to determine what content is advertisment. One of the methods seems to be looking for anything named or prefixed “%ad%” “%banner%”
Here are some elements that adblock plus blocks:
id=”adBanner”: blocked
id=”adbanner”: blocked
id=”adAd”: blocked
id=”bannerad”: blocked
id=”adHello”: not blocked
class=”adAd”: not blocked
id=”adVert”: not blocked
id=”adFixed”: not blocked
id=”adFull”: not blocked

Another method for blocking ads is communication blocking. There are certain servers that host ads.AdBlock just needs to keep a list of all these server addresses and when the browser is ready to retrieve the ads, Adblock steps in to stop the connection. This is when communication to ad-servers are blocked altogether (the client request does not occur). The adblock will block all requests from certain URLs such as Google Adsense. Adblock Plus gets help from various lists such as EasyList to define, customize and distribute rules that maximize blocking efficiency.

Adblock Users

User experience is important to retain visitors to your website, but what if your website is generating revenue completely from web ads? Some user complain that ads put their computer at risk, that ads are ugly, irrelevant, and interrupting. Ads also include tracking technology which feels like a major violation of privacy for web users. Usually the best way is to stop users from complaining is making sure your ads are non-intrusive and topical.

Although we may hate ads, they are important to keep the internet free. To help facilitate a middle ground for uses and advertisers, Adblock Plus has set up a program called acceptable ads.Users can allow some of the advertising to not be considered annoying to be viewed. By doing this they support websites that rely on advertising but choose to do it in a non-intrusive way. Adblock Plus also answers the question “which ads are acceptable? To name a few they listed Static advertisements only (no animations, sounds or similar) and preferably text only, no attention-grabbing images

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Web Performance News for the Week of March 17, 2014 appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-17-2014/feed/ 0
E-Commerce Benchmark – Drupal Commerce http://loadstorm.com/2014/03/e-commerce-benchmark-drupal-commerce/?utm_source=rss&utm_medium=rss&utm_campaign=e-commerce-benchmark-drupal-commerce http://loadstorm.com/2014/03/e-commerce-benchmark-drupal-commerce/#comments Tue, 18 Mar 2014 15:00:46 +0000 http://loadstorm.com/?p=8612   This post is part of a series: First – Previous Introduction Drupal Commerce is the last stop on our tour of e-commerce platforms. Drupal is a free content management system, and Drupal Commerce is an extension that allows you to build a web store with Drupal. This setup is similar to WooCommerce and Virtuemart, which both rely on their own content management systems. If you missed our previous posts, we are load testing six different e-commerce platforms and scoring them based on web performance. We continue our e-commerce benchmarking series by giving you a glimpse of out-of-the-box Drupal Commerce […]

The post E-Commerce Benchmark – Drupal Commerce appeared first on LoadStorm.

]]>
 
This post is part of a series: FirstPrevious

Introduction

Drupal Commerce is the last stop on our tour of e-commerce platforms. Drupal is a free content management system, and Drupal Commerce is an extension that allows you to build a web store with Drupal. This setup is similar to WooCommerce and Virtuemart, which both rely on their own content management systems.

If you missed our previous posts, we are load testing six different e-commerce platforms and scoring them based on web performance. We continue our e-commerce benchmarking series by giving you a glimpse of out-of-the-box Drupal Commerce and scoring it against the same load test standards as our out-of-the-box Magento store in the first blog post.

Setup

To streamline setup, I decided to use a bundle called Commerce Kickstart which contains a single package for both Drupal and Drupal Commerce. So you don’t have to worry about the in-betweens of installing the content management system and extension. How easy is that!

Commerce Kickstart is one of the easiest e-commerce packages to install, much like the Magento and osCommerce packages. There was one blaring difference about Drupal Commerce: there were no example products! This was unexpected because the front page (shown below) clearly shows a fake product slideshow.
Drupal Commerce homepage

Every other store had some sort of example product, even if it was just clipart garden tools. I ended up having to spend time adding sample items. I used an array of image sizes and qualities to mimic the variety in a typical web store.

Strangely enough, the example store came with categories. So I was sure to “stock” the items into those categories. I was ready to load test after an acceptable amount of products were added.

Testing Phase

Drupal Commerce Test #1
Drupal Commerce Test #2
Drupal Commerce Test #3

At 3 minutes into each of the three tests performed, we consistently see a spike in performance error rates. A majority of those performance errors are request connection timeout errors which means the load engines are not even able to establish a connection with the target server, Drupal.
Amazon Web Services could be blamed for this. The server is then crashing early on at around 350 VUsers. We expect higher scalability for a large Amazon EC2. So it’s like we’re missing a piece of a larger puzzle that needs investigating.

Score

Drupal Commerce scoresheet
Drupal Commerce gained a score of 55.7 out of 100. This puts Drupal Commerce in the lower end of the of ranks. The score would be better for Drupal Commerce if the WebPageTest repeat view metrics were not missing. We could not re-test due to time constraints, but we are assuming a value of 60 seconds for all the repeat views. This stops Drupal Commerce from unfairly being ranked as the worst in performance.

At this point, we’ve tested six different open source e-commerce platforms.

  • Magento Community Edition
  • WooCommerce
  • osCommerce
  • VirtueMart
  • OpenCart
  • Drupal Commerce

Since they are all free and open source, you can give them each a try on your own as well. A deeper analysis of the experiments will be done to make a final ranking of all tested e-commerce platforms. Come back next time and see how each platforms ranks!

This post is part of a series: FirstPrevious

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post E-Commerce Benchmark – Drupal Commerce appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/03/e-commerce-benchmark-drupal-commerce/feed/ 2
Performance Tuning : 7 Ways to Spring Clean your Website http://loadstorm.com/2014/03/performance-tuning-7-ways-spring-clean-site/?utm_source=rss&utm_medium=rss&utm_campaign=performance-tuning-7-ways-spring-clean-site http://loadstorm.com/2014/03/performance-tuning-7-ways-spring-clean-site/#comments Mon, 17 Mar 2014 17:10:02 +0000 http://loadstorm.com/?p=8623 Spring is here! Historically, this time of the year is representative of growth and renewal. It’s the perfect time for cleaning up your house, your yard, and your website. Keeping a modern website running smoothly can be time consuming and resource intensive. Modernizing your website may never become effortless, but this process can definitely become more manageable, maybe even enjoyable. This list provides an overview of quick and easy to apply tricks – including information on image optimization, general code cleanup , and using Gzip – to zip through clean up and arrive at a happy site. Before you start,choose […]

The post Performance Tuning : 7 Ways to Spring Clean your Website appeared first on LoadStorm.

]]>
Spring is here! Historically, this time of the year is representative of growth and renewal. It’s the perfect time for cleaning up your house, your yard, and your website.

Keeping a modern website running smoothly can be time consuming and resource intensive. Modernizing your website may never become effortless, but this process can definitely become more manageable, maybe even enjoyable. This list provides an overview of quick and easy to apply tricks – including information on image optimization, general code cleanup , and using Gzip – to zip through clean up and arrive at a happy site.

Before you start,choose a tool to performance test your website

To be effective in performance tuning, it’s essential to establish a baseline and measure the effect of the changes you make. Otherwise, how will you know if the changes were worthwhile? And, in the future, how will you know what to do again?

We like WebPageTest!
There are a ton of free tools out there. Our personal favorite? WebPageTest! This free, open-source tool makes it easy to analyze the most important metrics, a waterfall view of all requests and resources, and even capture video of rendering. Check out our previous post on performance analysis using WebPageTest.

Wherever you decide to proceed from, focus on one task at a time.

1. Update Your Platform

Every once in a while, I get these annoying pop ups in the center of my screen, while I’m in the middle of watching YouTube videos and scrolling endlessly through Facebook. Ahem, I mean, studying. I usually ignore them. However, updating your web app to the latest version usually yields better performance and speed, and bug fixes. For example, if you use a content management system, make sure you update it regularly.

2. Get Rid of Bad Links

There’s some debate on whether broken links on a site can harm SEO health. Either way, nobody likes clicking on something that doesn’t work. It gives the impression that the site owner, and even the company, is unprepared. There are several free tools available to help you find these broken links and fix them, including Screaming Frog and Google Webmaster Tools.

On the same token, minimize redirects. Redirects may not be as obvious to users (or even web developers for that matter),but they cause extra delay that can be avoided. Screaming Frog can help to diagnose these occurrences as well.

3. Minimize HTTP Requests

By now we’ve all heard the popular mantra: The fastest request is one not made. A simple way to minimize requests is to combine code and consolidate multiple files into one. This can also be done by implementing CSS Sprites for multiple images. More information on implementing this strategy can be found here.

4. Remove Unused Code, Plug-ins, and Settings

Sometimes it’s easier to just comment out the code we don’t need, but after a while, this stuff can just become unnecessary clutter. This is applicable to code, images in a database, old plug-ins, themes, and even the settings/tables left over from an older theme or plug-in that has since been replaced. If you’re not currently using a theme or plugin, get rid of it. You can always download it again later. Chances are you’ve moved on to something sexier anyways.

5. Clean up Images

There are countless image optimization techniques that can be utilized to boost performance, some of which are more complicated than others. Some simple image tuning techniques to start with include cropping and resizing. It’s also important to serve the image at it’s real size, rather than adjusting them on the fly. For example, if your image size is 1000 x 1000, you don’t want to use a markup to display the image at 100 x 100 because this will mean you’re just sending extra bytes. Instead, resize the image in an editor to 100 x 100, and use that smaller file. Additional image tuning techniques include reducing color depth, as well as removing any unnecessary image comments.

6. Clean Out Your Database

This is probably the trickiest thing on the list. Have you removed old revision posts lately? What about unused images?

7. Use GZIP

The average website has grown 151% in the past three years, with an increase in the amount of requests and the size of requests. GZip is a tool that can be used to combat and reduce the weight of the requests. The easiest way to implement it is to stick the script into the PHP of your site’s header. An in-depth explanation of using GZip can be found here.

Now that you’re done..

Ahh.. Don’t you feel better? Now you can measure your results and compare them to your baseline. Even though some of these suggestions aren’t meant to drastically improve the speed of your site, an making incremental improvements and keeping an organized production will reap huge gains in the long run. The best thing you can gain is experience. Post the results of your optimization below! How did these tips work out for your website? Do you have any useful tips for performance tuning your site?

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Performance Tuning : 7 Ways to Spring Clean your Website appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/03/performance-tuning-7-ways-spring-clean-site/feed/ 0
Web Performance News for the Week of March 10, 2014 http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-10-2014/?utm_source=rss&utm_medium=rss&utm_campaign=web-performance-news-for-the-week-of-march-10-2014 http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-10-2014/#comments Fri, 14 Mar 2014 22:04:12 +0000 http://loadstorm.com/?p=8543 Brief History: How IE 6 Ruined Internet Explorer’s Reputation In the early 2000s, IE 6 was the dominant web browsers that reigned supreme due to the lack of competition. This gave them the power to set the standard. Unfortunately, the standard was set all the way down to Satan’s feet. Because there wasn’t any competition at the time, the standard didn’t matter. Web developers had to make their websites compatible with IE. It was never the other way around. The lack of debugging tools, performance optimizations, and upgrades were little to none. IE 6 was released in 2000. For five […]

The post Web Performance News for the Week of March 10, 2014 appeared first on LoadStorm.

]]>
Brief History: How IE 6 Ruined Internet Explorer’s Reputation

In the early 2000s, IE 6 was the dominant web browsers that reigned supreme due to the lack of competition. This gave them the power to set the standard. Unfortunately, the standard was set all the way down to Satan’s feet. Because there wasn’t any competition at the time, the standard didn’t matter. Web developers had to make their websites compatible with IE. It was never the other way around. The lack of debugging tools, performance optimizations, and upgrades were little to none. IE 6 was released in 2000. For five staggering years, there was hardly an update. We didn’t see IE 7 until 2006. And here we are in 2014 with 22.2% of China still using Internet Explorer 6. Why?

Enforcing piracy laws in China wasn’t (still isn’t) a priority and XP was easy to pirate. The catch was that people had difficulty upgrading IE on a pirated version because Windows was checking to see if the copy was genuine. If pirates got anything newer, they would have to register their copy of Windows and pay for it.

XP for the Win

The release of IE 6 was supposed to be the be-all and end-all. When Windows XP was released in 2001, Microsoft required third party hardware manufacturers like Dell, HP, and Gateway to include IE 6 in all copies of XP. If these companies didn’t want IE 6 on their PCs and laptops, Microsoft would not agree to sell them copies of Windows. This move is what also killed Netscape. By removing Netscape off the map, Microsoft increased their browser market share. So, what did the number one web browser do when they were at the top spot? Nothing. Most members on the IE team were reorganized into the MSN division to build MSN Explorer. Since IE 6 had the biggest slice of pie, Microsoft believed that the browser war was over, innovation hit its peak, and the new nemesis to focus on was AOL.

Because Netscape was crushed and IE 6 achieved dominate market share, Microsoft disassembled their IE team and placed everyone on different projects. The belief was that the future of applications would be desktop based. That was one reason why there was a five-year gap between IE 6 and IE 7. The lack of continuous improvement for IE was frustrating for developers. The absence of updating IE lead to bugs and flaws in the browser security which turned IE 6 into an attack vector for hackers. VEUfO8O

Embrace, Extend, and Extinguish

Microsoft has been successful because of their their closed solutions which gave them a competitive advantage in the marketplace. They took the word processor and excel market away from WordPerfect and Lotus. Microsoft did this by making their product incompatible with the competition. Word Perfect could not read Word files, and the architecture of Lotus was incompatible with Excel. This strategy from Microsoft was called well EEE (embrace, extend, extinguish). Microsoft would implement a product and eventually enact incompatibilities on it. Finally, Microsoft would have enough power to push any potential competitor out of the market. This business culture that Microsoft was built on would not work for IE.

Originally Titled Phoenix

Firefox was introduced in 2005, one year before IE 7 was introduced. Firefox’s layout engine (Gecko) was heavily dependent on open source libraries. This was an advantage because developers using open source leveraged a passionate community that made a difference in development.  Microsoft’s layout engine (Trident) did not fit well with W3C standards, JavaScript implementation, or Java implementation. As a matter of fact, Microsoft originally intended to remove Java off the grid which resulted in a lawsuit.

Firefox first came along by reintroducing tabbed browsing from Opera. They did what IE was failing to do correctly, which was following  W3C standards and consistently updated their browser for their users. Once Web developers were able to make pages that followed web standards,  IE’s reputation became worse. Microsoft eventually rolled out IE 8, which seemed to compete well against Firefox at the time but they didn’t introduce IE 9 until two years later. This gave Firefox the time to continue gaining more users while consistently patching and send updates to users. IE was simply falling behind the times. With each new update from their competitors, It seemed like IE failed  to stay up-to-date against Firefox’s and eventually Chrome’s web standards.

 browser chart

Too late for IE?

Fast-forwarding to the present, Web developers are still frustrated of having to maintain outdated versions of IE. These older versions of IE are holding them and the entire web development back. Because standards were horribly set, front-end developers had to do twice the work necessary which required proprietary code hacks to make things work properly. Some sites are no longer putting up with older versions of IE. Several years ago, Australian retailer Kogan.com enacted a tax on IE 7.”The way we’ve been able to keep our prices so low is by using technology to make our business efficient and streamlined. One of the things stopping that is our Web team having to spend a lot of time making our new website look normal on IE7,” Kogan wrote.

The release of IE 9 was a turn around for IE. Microsoft paid attention to their users and worked better with W3C on following web standards. Their latest IE 11 proved to meet the standards of the web. Is it the best? That’s debatable. Reputation wise, IE still has a long way to go before they can be considered a serious browser.

 rzDbD

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Web Performance News for the Week of March 10, 2014 appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/03/web-performance-news-for-the-week-of-march-10-2014/feed/ 0
E-Commerce Benchmark – OpenCart http://loadstorm.com/2014/03/e-commerce-benchmark-opencart/?utm_source=rss&utm_medium=rss&utm_campaign=e-commerce-benchmark-opencart http://loadstorm.com/2014/03/e-commerce-benchmark-opencart/#comments Wed, 12 Mar 2014 17:49:47 +0000 http://loadstorm.com/?p=8463   This post is part of a series: First – Previous – Next Introduction OpenCart is yet another free, open source e-commerce solution for the typical user. When you search for “OpenCart” on Google, you will be surprised by what comes up. The first result is under the domain opencart.us, which is not the one we will test because it is proprietary. The correct OpenCart is the second entry: http://www.opencart.com/ If you missed our previous posts, we are scoring six different e-commerce platforms based on web performance. We continue our e-commerce benchmarking series by giving you a glimpse of OpenCart […]

The post E-Commerce Benchmark – OpenCart appeared first on LoadStorm.

]]>
 
This post is part of a series: FirstPreviousNext

Introduction

OpenCart is yet another free, open source e-commerce solution for the typical user. When you search for “OpenCart” on Google, you will be surprised by what comes up. The first result is under the domain opencart.us, which is not the one we will test because it is proprietary. The correct OpenCart is the second entry: http://www.opencart.com/

If you missed our previous posts, we are scoring six different e-commerce platforms based on web performance. We continue our e-commerce benchmarking series by giving you a glimpse of OpenCart by scoring it against the same standards as our Magento store in the first blog post.

Setup

The installation of OpenCart was more difficult than I anticipated. I ran into issues right at the end of OpenCart setup phase. For a typical PHP site, you get an indication that your installation was successful. I received no indication of a success or failure.
All I was given was the dreaded browser white screen with no PHP errors shown.

After a few more installation attempts and looking through the Apache error logs, I found out what was missing. There was a function in the php-mbstring package that was missing from the server. Once that issue was resolved, I could proceed to checking out the live demo store.
ocrt-homepage

The OpenCart Demo Store

OpenCart’s demo store is easy on the eyes like WooCommerce’s demo store. There is an immediate and modern appeal to the out-of-the-box sample store and theme. Funny, as this also isn’t the first time there’s been a Galaxy S tab in a sample store. I created a customer account to generate the scripts necessary for testing. Afterwards, it was time to load test the store.

Testing Phase

OpenCart Test #1
OpenCart Test #2
OpenCart Test #3

Test Results for all OpenCart load tests (click to expand)

The test selected to score OpenCart turned out to be test #1. It had an average response time of 9.6 seconds and an estimated scalability of 912 concurrent VUsers. WebPageTest results for first load time were dispersed as follows:

  • 1.51 seconds at the 0 minute mark
  • 21.0 seconds at the 30-minute mark
  • 104 seconds at the 55-minute mark

How did these metrics contribute to OpenCart’s score?

OpenCart's Final Score

OpenCart is currently second to last in performance overall. The two culprits that attribute to OpenCart receiving such a low score were the following:

  1. WebPageTest First View loading time average
  2. Estimated Scalability (using the scalability criteria)

I was anticipating for OpenCart to score well because of its design approach, but that was not the case. If you are looking for web performance right out of the box, then OpenCart should not be your choice.

The last testable e-commerce platform is coming up. Check in next week for the final web store, Drupal Commerce, and the web performance winner!

This post is part of a series: FirstPreviousNext

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post E-Commerce Benchmark – OpenCart appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/03/e-commerce-benchmark-opencart/feed/ 0
Performance Testing Interview with Phillip Odom http://loadstorm.com/2014/03/performance-testing-interview-with-phillip-odom/?utm_source=rss&utm_medium=rss&utm_campaign=performance-testing-interview-with-phillip-odom http://loadstorm.com/2014/03/performance-testing-interview-with-phillip-odom/#comments Tue, 11 Mar 2014 21:20:20 +0000 http://loadstorm.com/?p=8476 Phillip Odom’s background is in Electrical Engineering/Computer Engineering. Phillip grew up in Nashville, TN in the late 1970’s and 1980’s with access to “home computers” like the Tandy TRS-80, the Commodore 64, the Apple II, the Amiga, etc. So his childhood was spent making these quirky and somewhat crude machines do things, sometimes anything. When and why did you get into this industry? Professionally I have been working in technology for almost 20 years. I spent the first ten years working in the hardware and IT services sectors (Integration/Product Development/R&D) almost exclusively focused on the healthcare vertical. In 2004 I […]

The post Performance Testing Interview with Phillip Odom appeared first on LoadStorm.

]]>
cpobw

Phillip Odom’s background is in Electrical Engineering/Computer Engineering. Phillip grew up in Nashville, TN in the late 1970’s and 1980’s with access to “home computers” like the Tandy TRS-80, the Commodore 64, the Apple II, the Amiga, etc. So his childhood was spent making these quirky and somewhat crude machines do things, sometimes anything.

When and why did you get into this industry?

Professionally I have been working in technology for almost 20 years. I spent the first ten years working in the hardware and IT services sectors (Integration/Product Development/R&D) almost exclusively focused on the healthcare vertical. In 2004 I chose to take my career in a different direction. My friend Scott Moore, ran the QA/Performance practice for Deloitte in Nashville. He told me that he was leaving and planned to start a new company focused something that I was only vaguely familiar with called load testing. He sold me on the idea, took me under his wing, and I joined the startup team at LoadTester, Inc. in 2004.

There I began to learn how to perform (Mercury) Loadrunner consulting, and the finer points of the exquisite art of performance testing. I had opportunities to test web apps, SAP, Citrix, Oracle, custom .NET and J2EE portals, WebLogic, and all sorts of application technologies in between. Eventually (at the beginning of 2007) I started my own Application Performance Management (APM) practice called AppDiagnostics, where we performed integration and implementation services for Borland, CA, HP, OPNET, Microsoft, and SOASTA testing and diagnostic products. In September of 2013, AppDiagnostics was acquired by another firm, and I elected to join LoadStorm in November.

Do you consider yourself more of a software developer or QA professional?

I would consider myself a QA professional, for sure. I am more in tune with process development and execution. I generally can script with ANSI C and VB Script. I can build web objects with HTML and JQuery/JavaScript. I have even dabbled with Java for the purposes of Arduino prototyping, but code definitely does NOT drip from my fingertips.

What is your specialty? Why?

My specialty is process and service development. I generally subscribe to the notion: Show me the “why”, and I will show you the “what and how”. I enjoy the challenge of solving problems with repeatable processes.

Is there anything commonly overlooked in web application testing?

The number one mistake in Performance Testing is NOT proactively testing your application. All too often, people only consider performance testing AFTER a problem occurs. Then, they usually want to throw more hardware at the problem.

How much involvement do you have with load and performance testing?

I have been an active practitioner of performance for the last nine years. Generally I am involved with almost all aspects of performance testing, including: initial project scoping, project management, requirements gathering, objective setting, test planning, business process design, test script development, test product configuration, test execution, analysis, reporting, and final documentation. Once, (no kidding) I even had a client ask me to make guacamole… And I did.

What would you say is the difference between load testing and performance testing?

Well, first I see Load Testing and Stress Testing as sub-sets of Performance Testing. Beyond that, I was taught and currently teach my clients that there are distinct differences between a Stress Test and a Load Test.

The objective of a Stress Test is to achieve “First Point of Failure”. The objective of a Load Test is to achieve a simulation of a “Peak Hour” of “Real-World” usage.


Who are the top 3 testing experts that you know?

I know way more than three, but the most significant to me would be Scott Moore the Founder and President at Northway Solutions Group.

Do you feel like performance testing is an accepted critical part of the development life cycle?

No, but things are getting better. In the ideal world, we all want every customer to “engineer” performance into the SDLC. Many times, this still doesn’t happen. For example, my wife is a software developer for a publicly traded, Fortune 500 health care company with 50,000 employees. While they have implemented formal QA from a functional perspective, they STILL do not performance test anything. ANYTHING, EVER! When her team experiences a performance issue, their first reaction is to throw more hardware or bandwidth at the problem. This usually ends with costing more money only to achieve mixed results.

I am under the impression that some customers still equate performance testing to some form of Voodoo/Black Magic that they don’t understand, never realizing the rigorous processes behind most performance delivery frameworks. To that end, I have written testing methodology documents in excess of a couple hundred pages bemoaning the principals and benefits of repeatable processes. However, I have never sacrificed a chicken to improve transactions per second.

facebooktwittergoogle_plusredditpinterestlinkedinmail

The post Performance Testing Interview with Phillip Odom appeared first on LoadStorm.

]]>
http://loadstorm.com/2014/03/performance-testing-interview-with-phillip-odom/feed/ 0