<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Official Rackspace Blog &#187; RJ Rowntree</title>
	<atom:link href="http://www.rackspace.com/blog/author/rj-rowntree/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rackspace.com/blog</link>
	<description>The Official Rackspace Blog</description>
	<lastBuildDate>Fri, 17 May 2013 15:00:37 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Rackspace Sponsors 2013 Magento Imagine eCommerce Conference</title>
		<link>http://www.rackspace.com/blog/rackspace-sponsors-2013-magento-imagine-conference/</link>
		<comments>http://www.rackspace.com/blog/rackspace-sponsors-2013-magento-imagine-conference/#comments</comments>
		<pubDate>Mon, 01 Apr 2013 16:00:21 +0000</pubDate>
		<dc:creator>RJ Rowntree</dc:creator>
				<category><![CDATA[Cloud Industry Topics]]></category>
		<category><![CDATA[Open Cloud]]></category>
		<category><![CDATA[Upcoming Events]]></category>
		<category><![CDATA[ecommerce]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[magento]]></category>
		<category><![CDATA[Magento Imagine 2013]]></category>

		<guid isPermaLink="false">http://www.rackspace.com/blog/?p=28466</guid>
		<description><![CDATA[Rackspace is a Diamond sponsor at the 2013 Magento Imagine eCommerce Conference April 8 through April 10 in Las Vegas.]]></description>
				<content:encoded><![CDATA[<p>Rackspace is a Diamond sponsor at the 2013 <a href="http://www.imagineecommerce.com/">Magento Imagine eCommerce Conference</a> April 8 through April 10 in Las Vegas.</p>
<p>Throughout the event, Rackspace will be on-hand to help attendees garner a deeper understanding of how <a href="http://www.rackspace.com/ecommerce-hosting/">Rackspace can augment your ecommerce strategy</a> through expert advisement and architecture of your infrastructure.</p>
<p>Mitch Robins, Senior Systems Engineer at Rackspace, will speak as part of a panel discussion on April 10 regarding global expansion of your brand. And Rackspace will be exhibiting on the conference expo floor in booth No. 9.</p>
<p>Through our long history with <a href="http://www.magentocommerce.com/">Magento</a>, we have developed intimate knowledge around the types of solutions that will deliver peak performance for your online store.</p>
<p>We hope to see you in Vegas!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rackspace.com/blog/rackspace-sponsors-2013-magento-imagine-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rackspace And Magento eCommerce Forums</title>
		<link>http://www.rackspace.com/blog/rackspace-and-magento-ecommerce-forums/</link>
		<comments>http://www.rackspace.com/blog/rackspace-and-magento-ecommerce-forums/#comments</comments>
		<pubDate>Mon, 04 Mar 2013 21:00:42 +0000</pubDate>
		<dc:creator>RJ Rowntree</dc:creator>
				<category><![CDATA[Business Tips and Tricks]]></category>
		<category><![CDATA[Cloud Industry Topics]]></category>
		<category><![CDATA[Open Cloud]]></category>
		<category><![CDATA[Product Discussion]]></category>
		<category><![CDATA[Rackspace Partners]]></category>
		<category><![CDATA[Upcoming Events]]></category>
		<category><![CDATA[ecommerce]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[magento]]></category>
		<category><![CDATA[online retail]]></category>

		<guid isPermaLink="false">http://www.rackspace.com/blog/?p=27486</guid>
		<description><![CDATA[Rackspace hits the road this week with Magento and several of our top partners to deliver an eCommerce experience that will reveal a multitude of ways to make the most of your Magento storefront. ]]></description>
				<content:encoded><![CDATA[<p>Rackspace hits the road this week with Magento and several of our top partners to deliver an eCommerce experience that will reveal a multitude of ways to make the most of your Magento storefront.</p>
<p>We are doing a three-city tour March 5, March 6 and March 7. Please join us as we illustrate best practices for personalization, conversion and full service hosting. Rackspace will be making stops in Dallas, New York City and Montreal.</p>
<p>The links to register are below and we hope to see you there! Please respect that this is a forum for online merchants only.</p>
<p><b>Dallas</b><br />
March 5, 4 p.m. CST<br />
Madison Building<br />
Atrium Conference Room<br />
15851 Dallas Parkway<br />
Addison, Texas<br />
<a href="https://info.magento.com/dallas.html?utm_source=Dallas%2BECF&amp;utm_medium=registration&amp;utm_campaign=Rackspace%2BDallas%2BECF%2BMarch%2B5">Register here</a></p>
<p><b>New York City</b><br />
March 6, 5:30 p.m. EST<br />
Empire State Building<br />
Empire Room<br />
New York, N.Y.<br />
<a href="https://info.magento.com/March62013NYCECF.html?utm_source=NYC%2BECF%2BMarch%2B6&amp;utm_medium=email&amp;utm_campaign=Rackspace%2BECF%2BNYC">Register here</a></p>
<p><b>Montreal</b><br />
March 7, 5:30 p.m. EST<br />
W Montreal<br />
901 Square Victoria<br />
Montreal, Quebec<br />
<a href="https://info.magento.com/March72013MontrealECF.html?utm_source=Montreal%2BECF%2BMarch%2B7&amp;utm_medium=reg%2Bpage&amp;utm_campaign=Rackspace%2BMontreal%2BECF%2BMarch%2B7">Register here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rackspace.com/blog/rackspace-and-magento-ecommerce-forums/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>E-Commerce Tip: Load Testing: A Critical Step</title>
		<link>http://www.rackspace.com/blog/e-commerce-tips-load-testing-a-critical-step/</link>
		<comments>http://www.rackspace.com/blog/e-commerce-tips-load-testing-a-critical-step/#comments</comments>
		<pubDate>Mon, 05 Nov 2012 20:00:44 +0000</pubDate>
		<dc:creator>RJ Rowntree</dc:creator>
				<category><![CDATA[Cloud Industry Topics]]></category>
		<category><![CDATA[Customer Success Stories]]></category>
		<category><![CDATA[Open Cloud]]></category>
		<category><![CDATA[Product Discussion]]></category>
		<category><![CDATA[Rackspace Partners]]></category>
		<category><![CDATA[E-commerce]]></category>
		<category><![CDATA[holiday traffic]]></category>
		<category><![CDATA[online retail]]></category>
		<category><![CDATA[Rackspace customers]]></category>
		<category><![CDATA[rackspace partners]]></category>

		<guid isPermaLink="false">http://www.rackspace.com/blog/?p=24598</guid>
		<description><![CDATA[With the busy holiday season fast approaching, Rackspace has invited some of its e-commerce partners to provide tips on how to prep e-commerce sites for the holiday crunch. Here, Submodal Director of Engineering Jason Gordon discusses the importance of load testing.]]></description>
				<content:encoded><![CDATA[<p><em>The busy holiday shopping season is only a month away and <a href="http://www.nrf.com/modules.php?name=News&amp;op=viewlive&amp;sp_id=1433#online">the National Retail Federation forecasts 12 percent growth in online sales</a> over last year.  Sounds like good news, doesn&#8217;t it?  It is, if you can keep your virtual doors open and sales flowing around the clock. Recently, Rackspace offered up <a href="http://www.rackspace.com/blog/prep-your-e-commerce-site-for-the-holiday-crunch/">five tips to prep your e-commerce site for the holiday crunch</a>. We invited some of our e-commerce partners to provide a guest blog post looking at those tips and offering further advice.  </em></p>
<p><em><a href="http://submodal.com/">Submodal </a>is a web design studio and a Rackspace e-commerce partner that works with companies of all sizes – from startups to established consumer brands. </em><em>Here, Submodal Director of Engineering Jason Gordon discusses why load testing is a critical step for your e-commerce site.</em><em></em></p>
<p>We know how crucial load testing is: it’s the reason such a detailed approach has been developed to address this aspect of web application deployment. Here’s what you need to know about load testing and all the issues that come with it.</p>
<h2>WHAT IS LOAD TESTING?</h2>
<p>When someone uses the term “load testing,” they are usually talking about a larger set of tasks involved in delivering a responsive web application.</p>
<p>For us, load testing is the final step in the testing process, during which all performance tests are run simultaneously over a period of time to see how the system will hold up for a couple of days. It’s similar to how automotive engineers run an engine by itself for a few months straight to test its safety and capabilities.</p>
<p>“Load” is the number of concurrent connections to a system. Since we specialize in Magento, load will be discussed here in the context of a Magento e-commerce application. We also run another CMS in tandem with Magento, which helps determine what type of users a system will have: non-authenticated shoppers, authenticated shoppers and content administrators. A performance plan should include tests designed for each of these three users, because each type of user creates a different load on the system.</p>
<h2>LEAD UP TO TESTING</h2>
<p>Before the performance-testing phase, it’s important to follow a few development best practices. First, minimize HTTP connections as much as possible by:</p>
<ol>
<li>Merging and compressing JavaScript files. Ideally, this process is part of an automated build; but on small projects the process is often performed manually by combining JS files into one large file that is then run it through <a href="http://refresh-sf.com/yui/">Yahoo’s compressor</a>, or a similar tool.</li>
<li>The CSS files are merged and compressed using the same technique as with JavaScript.</li>
<li>We use image sprites as much as possible to ensure all images load quickly and at the same time.</li>
<li>We also use a CDN, and generally recommend a cloud solution like <a href="http://www.rackspace.com/cloud/public/files/">Rackspace Cloud Files</a>. A system that supports origin pull eliminates the need for software that manages assets on the CDN (which is both difficult and).</li>
</ol>
<p>The next step is to determine which parts of each page don’t change and are cacheable. In our applications, most parts fall into this category. For the sections that don’t fit this bill, we often employ ajax to fill in the “holes,” and Varnish’s ESI technique (“edge side includes”).</p>
<p>By implementing a very lightweight code review process, we identify obvious performance issues in new code. By running our code tests with a tool such as JMeter during the development process, performance and load testing is much easier later on, and poor performing code is identified earlier in the process.</p>
<h2>WHAT&#8217;S ACTUALLY BEING TESTED?</h2>
<p><img class="alignnone" src="http://ddf912383141a8d7bbe4-e053e711fc85de3290f121ef0f0e3a1f.r87.cf1.rackcdn.com/submodal.png" alt="" width="630" height="381" /></p>
<p>The process essentially tests from left to right; as a request comes into the system, it gets jiggled around, and then comes back to the browser. The goal is to determine how many of these types of requests a system can handle. Here’s a simplified view of the request flow:</p>
<ol>
<li>Load balancer decides which app server to hit</li>
<li>App server checks static cache (varnish). We use nginx here because each request consumes very few resources, allowing many requests to be offload from apache</li>
<li>On a miss, the request is routed to the second webserver (apache)</li>
<li>The request is then routed to either Magento or the CMS where the software stack boots up</li>
<li>The software will make requests to a database cache (memcached)</li>
<li>On a miss, the database will be queried (mostly reads)</li>
<li>After all cache hits/misses and database action, the response is returned back up the chain and through the load balancer</li>
<li>The response will be HTML filled with many requests to static assets that will be served by the CDN</li>
</ol>
<p><span style="text-decoration: underline;">Here’s what is being tested:</span></p>
<ol>
<li>How many concurrent requests can a system handle at maximum load?</li>
<li>What are response times for all test paths, and are they acceptable?</li>
<li>What points in the chain are consuming the most hardware resources?</li>
<li>Are there any obvious failures caused by large data sets, many users, many products, many orders and other factors?</li>
<li>Is there any obvious low hanging fruit to optimize? This category includes:<br />
a. Totally unnecessary database queries<br />
b. Frequently used code paths that produce a consistent result (can be cached)<br />
c. Frequently repeating database queries (can be cached)</li>
<li>Is there anything else that can be obviously cached?</li>
</ol>
<h2>THE LOAD TEST ENVIRONMENT</h2>
<p>In practice, the load test environment ends up being:</p>
<ul>
<li>Software tools for sending lots of requests to our system</li>
<li>Scripts to simulate user activity on the site</li>
<li>Scripts to generate mass amounts of data in the system</li>
<li>Hardware to run tools</li>
<li>Spreadsheets to track and analyze results.</li>
</ul>
<p>The first step is to define the set of requests that makes up the basis of how users will interact with the site, such as:</p>
<ul>
<li>The front page (most important page)</li>
<li>Any “hole punching” URLs</li>
<li>Shopping cart page, full and empty</li>
<li>Checkout page</li>
<li>User account pages</li>
<li>Random types of URLs that generate 404s. It is crucial to minimize how many 404s the software stack has to deal with.</li>
</ul>
<p>We use <a href="http://httpd.apache.org/docs/2.2/programs/ab.html">apache bench</a> to quickly benchmark each request in a test list. This is when the reverse proxy cache system will be tuned to ensure it is getting as many hits as possible. Apache bench will also give a basic sense of how many requests per second the system can handle for each URL.</p>
<p>Next, we create scripts to generate test data and simulate user interaction. Although we create some stand-alone scripts for data generation, the main goal is to make a large suite of <a href="http://jmeter.apache.org/">scripts for JMeter</a>. A script will be made for each test path, cookies and all. JMeter scripts are easy to make into templates, and can be copied and pasted to create new ones.</p>
<p>A list of necessary scripts:</p>
<ol>
<li>Randomly create products</li>
<li>Randomly create orders (fill up a cart, then checkout)</li>
<li>Randomly create customer accounts (can combine this with creating an order script)</li>
<li>Make changes in the admin interface (creating categories, configuration changes).</li>
</ol>
<p>The idea is to run these scripts both individually and simultaneously to find performance limits. This will fill up a database with lots of data so that during load testing you can identify bottlenecks that occur only when a good amount of data is present.</p>
<p>Then comes the testing system setup. Laptops quickly run out of capacity for testing, so load testing tools usually get set up on cloud machines. During load testing, several machines will run for several days.</p>
<h2>TESTS AND ANALYSIS</h2>
<p>Now it’s time to actually run tests. Because running tests can be very time consuming, it’s important to ensure we get the most information possible out of each test run and avoid wastefully repeating the same test. To do so, we create a spreadsheet with the following information:</p>
<ol>
<li>Name of the person running the test</li>
<li>The date, time and duration of the run</li>
<li>A clearly defined hypothesis</li>
<li>A statement of what has changed</li>
<li>A set of metrics being tracked during the test</li>
<li>A post-run capture of the results of the metrics, best visualized with a graph of the metric over time.</li>
</ol>
<p>Using a set of monitoring tools allows us to obtain truthful data about actual test performance in simple visual graphs: <a href="http://www.cacti.net/">Cacti</a> for capturing metrics, <a href="http://www.webyog.com/product/monyog">MONyog</a> for monitoring the database and <a href="http://codeascraft.etsy.com/2011/02/15/measure-anything-measure-everything/">statsd</a> to put stats logging into code so we can monitor code performance in real time. By saving this information in spreadsheets, we achieve provable results and can identify the most effective tests.</p>
<p>Once we churn through the performance tests and apply all possible optimizations, we start running longer tests. A nice side effect of all this setup is that it puts in place a monitoring system that can be used throughout the life of the site, which is very helpful during new software releases.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rackspace.com/blog/e-commerce-tips-load-testing-a-critical-step/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>E-Commerce Tip: Optimization Through Configuration</title>
		<link>http://www.rackspace.com/blog/e-commerce-tip-optimization-through-configuration/</link>
		<comments>http://www.rackspace.com/blog/e-commerce-tip-optimization-through-configuration/#comments</comments>
		<pubDate>Mon, 29 Oct 2012 19:00:10 +0000</pubDate>
		<dc:creator>RJ Rowntree</dc:creator>
				<category><![CDATA[Cloud Industry Topics]]></category>
		<category><![CDATA[Customer Success Stories]]></category>
		<category><![CDATA[Open Cloud]]></category>
		<category><![CDATA[Product Discussion]]></category>
		<category><![CDATA[Rackspace Partners]]></category>
		<category><![CDATA[E-commerce]]></category>
		<category><![CDATA[holiday traffic]]></category>
		<category><![CDATA[online retail]]></category>
		<category><![CDATA[Rackspace customers]]></category>
		<category><![CDATA[rackspace partners]]></category>

		<guid isPermaLink="false">http://www.rackspace.com/blog/?p=24350</guid>
		<description><![CDATA[With the busy holiday season fast approaching, Rackspace has invited some of its e-commerce partners to provide tips on how to prep e-commerce sites for the holiday crunch. Here, Something Digital Director of Software Development Jon Tudhope discusses optimization through configuration.]]></description>
				<content:encoded><![CDATA[<p><em>The busy holiday shopping season is only a month away and <a href="http://www.nrf.com/modules.php?name=News&amp;op=viewlive&amp;sp_id=1433#online">the National Retail Federation forecasts 12 percent growth in online sales</a> over last year.  Sounds like good news, doesn’t it?  It is, if you can keep your virtual doors open and sales flowing around the clock. Recently, Rackspace offered up <a href="http://www.rackspace.com/blog/prep-your-e-commerce-site-for-the-holiday-crunch/">five tips to prep your e-commerce site for the holiday crunch</a>. We invited some of our e-commerce partners to provide a guest blog post looking at those tips and offering further advice.  </em></p>
<p><em><a href="http://www.somethingdigital.com/about">Something Digital</a> is a New York-based technology services boutique that offers interactive design, software and IT services. Here, Something Digital Director of Software Development Jon Tudhope discusses optimization through configuration.</em></p>
<p>Is your ecommerce site ready for that traffic volume increase this holiday? Be sure to review your application and server configuration settings to ensure you get the most out of your hosting infrastructure. Here are some steps we’ve taken in the past to improve store responsiveness specifically on the Magento applications we maintain.</p>
<p>*Note – The best approach to implementing configuration changes is to experiment with changes in your development/staging environment under load. Your service provider should be able to assist in this process.</p>
<p>The flexibility and extensibility of Magento affords us a significant means to customize. The problem is that customizations inevitably introduce risk of inefficiencies. The good news is that several out-of-box Magento features — when configured correctly — can really improve a store’s performance. Most of the performance optimization features relate to caching and indexing in some form. Below we’ll cover five of the most important Magento-configurable features available out of box.</p>
<p><strong>1. Full Page Caching</strong><br />
This configuration has one of the biggest impacts on store performance. Essentially, Magento runs a lot of code to determine which HTML to serve to your client’s browser — the full page cache mechanism stores the emitted HTML the first time each page is requested and resends that response for all subsequent requests. The Magento cache feature takes care to ensure that dynamic content (e.g., cart count, Welcome message, etc.) still varies by customer although the remaining majority of the page is served without reprocessing the code. For non-enterprise editions there are excellent caching extensions available on the Magento Connect store. Keep in mind that the introduction of page cache means that store administrators must refresh the cache when any content changes (e.g., product details, CMS pages/blocks, etc). Cache management is accessible through the Magento admin panel.</p>
<p><strong>2. Enabling Flat Catalogs</strong><br />
As per Magento, performance improvement from enabling flat catalogs only becomes evident in stores with over 1,000 SKUs. Technically, the flexible EAV (Entity Attribute Value) model employed by Magento gives users the ability to completely customize product attributes but at a performance cost. The flat catalog serves to condense the EAV attributes into a single table and row, reducing the number and complexity of catalog queries being executed, and thereby improving the application response times. You should enable this setting in conjunction with your service provider as there could be minor application development changes required to take full advantage of the feature. In addition, implementing this change has an operational impact — requiring that you rebuild the product catalog when product attributes change.</p>
<p><strong>3. Magento Compilation</strong><br />
Magento code is arranged within hundreds of directories on a server’s file system. For each page request the server expends considerable effort to locate the correct files, which amounts to higher disk I/O that can be a bottleneck in high-traffic scenarios. Pre-compilation stores the code in a single folder and consolidates it into a smaller number of files on disk, reducing the potential for an I/O bottleneck and improving page response times.</p>
<p>This setting can be found in System – Tools – Compilation, and your service provider should be able to assist. Take care to proceed with some caution here — this enhancement can have some unintended consequences. It’s best to test in a staging environment before turning it on, and remember that for each code deployment the compiled code will need to be refreshed.</p>
<p><strong>4. Front-end Optimizations</strong><br />
Magento provides two front-end optimization configuration options responsible for merging both Javascript and CSS content, reducing the number of roundtrips to the server for each page load and often improving the user experience. This setting does not have a direct impact on the page response time (as do some of the other optimizations mentioned), but the user may experience improved performance with this setting enabled — especially if the store includes a high count of JS and CSS files.</p>
<p><strong>5. Compression </strong><br />
Enabling server-side compression can reduce the size of your store pages (excluding images), significantly reducing the time to return data from the server and making a web server process available sooner. You can work with your service provider to enable compression in the Magento <em>.htaccess</em> file.</p>
<p>Below is a consolidated checklist of potential performance-related configuration changes for both Magento and LAMP. Having your service provider carefully research and review these settings can help put you on track to get the most out of your infrastructure this holiday season.</p>
<p style="text-align: center;"><img class="aligncenter" src="http://ddf912383141a8d7bbe4-e053e711fc85de3290f121ef0f0e3a1f.r87.cf1.rackcdn.com/something.digital.graphic.png" alt="" width="619" height="576" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rackspace.com/blog/e-commerce-tip-optimization-through-configuration/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Content Delivery Network via Rackspace Cloud Files: c3414940.r40.cf0.rackcdn.com

 Served from: www.rackspace.com @ 2013-05-19 09:45:02 by W3 Total Cache -->