<?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/"
xmlns:series="http://organizeseries.com/"
> <channel><title>SitePoint &#187; CloudSpring</title> <atom:link href="http://www.sitepoint.com/category/cloudspring/feed/" rel="self" type="application/rss+xml" /><link>http://www.sitepoint.com</link> <description>Learn CSS &#124; HTML5 &#124; JavaScript &#124; Wordpress &#124; Tutorials-Web Development &#124; Reference &#124; Books and More</description> <lastBuildDate>Mon, 13 May 2013 13:12:07 +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>Testing 3 Hosted Shopping Carts: Operations</title><link>http://www.sitepoint.com/testing-3-hosted-shopping-carts-operations/</link> <comments>http://www.sitepoint.com/testing-3-hosted-shopping-carts-operations/#comments</comments> <pubDate>Fri, 26 Apr 2013 13:00:27 +0000</pubDate> <dc:creator>Jacco Blankenspoor</dc:creator> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[ecommerce]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=65611</guid> <description><![CDATA[Jacco Blankenspoor continues his comparison of three hosted shopping cart solutions, checking what Shopify, Yahoo and Magento offer in terms of set-up, mobile options and pricing. ]]></description> <content:encoded><![CDATA[<p></p><p>In my <a
href="http://www.sitepoint.com/testing-3-hosted-shopping-carts/">last article</a>, I profiled the features available in three leading providers of hosted shopping cart solutions: Shopify, Yahoo Small Business and Magento Go. Each was found to have distinct pros and cons.</p><h2>Setting Up</h2><p>Now, let’s find out how easy it is to set up an actual shop.</p><h3>Shopify</h3><p><img
class="alignnone size-full wp-image-65612" alt="shopify set up" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure110.png" width="694" height="321" /></p><p>Setting up your shop with Shopify takes literally less than a minute, and after entering your personal information, you are taken to the dashboard.</p><p><img
class="alignnone size-full wp-image-65613" alt="shopify dashboard" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure25.png" width="698" height="396" /></p><p>You can group products in collections, which works as a category system.</p><p>Per product, you can set up the appropriate SEO settings and manage your inventory.</p><p><img
class="alignnone size-full wp-image-65614" alt="shopify inventory" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure35.png" width="701" height="331" /></p><p>And so within a few more minutes, my first product was on display.</p><p>All very clear, and straightforward.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p><img
class="alignnone size-full wp-image-65615" alt="shopify pages" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure44.png" width="709" height="357" /></p><p>There is a built-in CMS, which you can use to manage your non-product pages, blog and footer. Again, all very clear, it just does what it needs to do.</p><p><img
class="alignnone size-full wp-image-65616" alt="shopify cms" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure53.png" width="670" height="356" /></p><p>Switching themes is very easy, just select one from their theme store, and have it installed directly on your shop.</p><p>You can download the files to change the HTML/CSS offline.</p><p><img
class="alignnone size-full wp-image-65617" alt="shopify html" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure63.png" width="711" height="288" /></p><p>Shopify uses its own templating language, called Liquid. They provide extensive documentation on how to use it, and you as a developer should be able to quickly pick it up (for a little bit of help, <a
href="http://www.sitepoint.com/an-introduction-to-building-shopify-themes/">Sitepoint’s got you covered</a>).</p><p><img
class="alignnone size-full wp-image-65618" alt="shopify apps" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure73.png" width="665" height="153" /></p><p>Installing apps is as easy as installing themes, and a decent number of apps is provided for free in their app store.</p><h3>Yahoo Small Business</h3><p>Unlike Shopify and Magento Go, Yahoo Small Business doesn’t offer a free trial. So you have to start paying right away. You can always ask for a refund when not satisfied, but it’s a bit old fashioned.</p><p>Anyway, when you are signed up, you are presented with a handy wizard to set up your store.</p><p><img
class="alignnone size-full wp-image-65619" alt="yahoo start" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure83.png" width="641" height="404" /></p><p>You start with selecting a template from their built-in repository. This can be generic templates, or pre-made ones. The difference is in the use of images, but they all seem like they were made in the 90s.</p><p>The next screens all show you steps for information you need to enter, which works very conveniently.</p><p>And it seems I’m not too far off with my remark about the 90s, since this is the default text for the copyright notice&#8230;</p><p><img
class="alignnone size-full wp-image-65620" alt="yahoo copyright" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure93.png" width="414" height="97" /></p><p>Next step: adding products.</p><p>Again, you do this by performing a series of steps.</p><p><img
class="alignnone size-full wp-image-65621" alt="yahoo product info" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure102.png" width="665" height="645" /></p><p>You have to publish your site every time you make a change or add a products, which leaves you waiting for half a minute.</p><p><img
class="alignnone size-full wp-image-65622" alt="yahoo demo store" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure112.png" width="684" height="621" /></p><p>Within a few minutes, I added my first product. You can select “Options” for your product, like difficulty in this example. This field can be used by you to sell multiple variations of a product.</p><p>After going through all the additional steps for payment, taxes and shipping (which is all very easy and well described), you are taken to the real dashboard.</p><p><img
class="alignnone size-full wp-image-65623" alt="yahoo dashboard" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure122.png" width="688" height="612" /></p><p>Especially the “Promote” section is worth noting, since these are pretty powerful options. Things like promotions and coupons are easily setup and managed.</p><p>And you should really check out the Yahoo! Marketing Dashboard, which is a great tool to keep track of your marketing efforts.</p><p>As I mentioned before, Yahoo Small Business doesn’t do fancy themes, or apps. What you see it what you get, although you can hire an expert to make decent theme for your site.</p><p>Or if you are a developer yourself, there is an extensive store editor in which you can go wild on coloring, HTML and directly editing CSS to make it look professionally.</p><p>It’s all there and should be familiar to you, which present an excellent business opportunity.</p><h3>Magento Go</h3><p>Setting up your Magento Go store takes a bit longer to set up than Shopify, but you’re still up and running within five minutes.</p><p><img
class="alignnone size-full wp-image-65624" alt="magento start" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure132.png" width="697" height="317" /></p><p>Magento provides a handy setup wizard, which takes you through all the steps needed to launch your store. During the installation you can choose to load example data, so you can see a working version of your store right away.</p><p><img
class="alignnone size-full wp-image-65625" alt="magento demo store" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure142.png" width="692" height="627" /></p><p>I choose to set it up in their UK datacentre (which is closest to me), and I was surprised to see they already added the required Cookie Law notice bar at the bottom.</p><p><img
class="alignnone size-full wp-image-65626" alt="magento products" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure152.png" width="708" height="301" /></p><p>When you start working on your store, you’ll soon find out why the setup wizard is shown: Magento has lots and lots of options for you to configure, and adding a product isn’t as straightforward as with Shopify.</p><p>Their navigation bar is quite extensive, and the configuration screen can be intimidating at first.</p><p><img
class="alignnone size-full wp-image-65627" alt="magento configuration" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure161.png" width="708" height="677" /></p><p>This is where you as a developer can display your consulting power, if you know your way around it of course.</p><p><img
class="alignnone size-full wp-image-65628" alt="magento product info" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure171.png" width="711" height="600" /></p><p>And it doesn’t stop there. Adding a product gives you a whole new range of options to configure. And it goes on and on, about every screen you open gives you more options than you can think off.</p><p>I didn’t use the word &#8220;overwhelming&#8221; for no reason&#8230;</p><h2>Mobile</h2><p>With mobile becoming hotter and hotter, it’s almost a must to have a mobile-optimized site. Not every product line will be suited for mobile, but if you do decide to set up mobile site, it should be easy.</p><p>So, let’s see how the shopping cart providers deal with this.</p><h3>Shopify</h3><p>Mentioned as a specific Pro, Shopify offers both a mobile site as well as a mobile app for iOs and Android.  You can specify different themes for desktop and mobile visitors.</p><p>Their sales page claims you can start selling with a mobile site right away, but their default template isn’t really mobile. You have to look for a mobile or responsive theme first. And there’s currently no free mobile theme. But there is a limited choice for free responsive themes, which should give you enough to start with.</p><p>The difference between the mobile and responsive themes is in the navigation: Mobile themes look more like an app, while a responsive theme looks more like the desktop version, with some of the heavy elements left out. So their mobile claim is to be taken with a grain of salt, at least if you don’t want to pay for another theme.</p><table
width="624" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65629" alt="shopify desktop" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure181.png" width="295" height="155" /></td><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65630" alt="shopify mobile" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure191.png" width="297" height="446" /></td></tr><tr><td
valign="top" width="156"><i>Desktop version</i></td><td
valign="top" width="156"><i>Mobile version (responsive)</i></td></tr></tbody></table><p>So the mobile frontend doesn’t really live up to the expectation, but does the same apply for the app?</p><p>I downloaded the free iOs App, and I can see they definitely put some work in it. This is truly mobile management. You can view your customers and orders, and even add new products or modify existing ones. There’s a convenient dashboard with important metrics like revenue, visitors (up to 90 days backs), open orders and a low inventory warning.</p><p>You won’t be able to edit the sites’ themes, apps or pages, but that’s because a desktop is more convenient. But all the essentials are included, so this is definitely a plus.</p><table
width="624" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65632" alt="shopify mobile dashboard" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure20.png" width="294" height="442" /></td><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65633" alt="shopify mobile products" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure211.png" width="296" height="444" /></td></tr><tr><td
valign="top" width="156"><i>Mobile dashboard</i></td><td
valign="top" width="156"><i>Mobile editing of products</i></td></tr></tbody></table><h3>Yahoo Small Business</h3><p>Not much to cover here, Yahoo Small Business simply doesn’t seem aware of the mobile business revolution which is going on.</p><p>When you open the store with your mobile browser, you see what I mean. It’s not even taking advantage of the full screen, which makes it even smaller.</p><table
width="624" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65634" alt="yahoo desktop" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure221.png" width="298" height="272" /></td><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65635" alt="yahoo mobile" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure231.png" width="301" height="451" /></td></tr><tr><td
valign="top" width="156"><i>Desktop version</i></td><td
valign="top" width="156"><i>Mobile version </i></td></tr></tbody></table><p>You probably guessed there’s no mobile app.</p><h3>Magento Go</h3><p>Well, despite all its features, Magento Go really stays behind on the mobile front. After some hard searching, I managed to find one (1!) <a
href="http://wizardthemes.com/go-themes/free-magento-go-theme.html">theme </a>which isn’t even mobile-only, but responsive.</p><p>And even after going through the signup process, and “ordering” the free theme, I couldn’t get to it. But you can give it a try. When installed, it will look like this.</p><table
width="624" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65636" alt="magento desktop" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure241.png" width="300" height="263" /></td><td
valign="top" width="156"> <img
class="alignnone size-full wp-image-65637" alt="magento mobile" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/04/figure251.png" width="300" height="450" /></td></tr><tr><td
valign="top" width="156"><i>Desktop version</i></td><td
valign="top" width="156"><i>Mobile version (responsive)</i></td></tr></tbody></table><p>Unfortunately, there is no mobile app for Magento Go, so you’re left to visiting the desktop version with your phone.</p><p>This requires some patience, since loading is slow and there are too many options to easily click on smaller screens.</p><h2>Pricing</h2><p>When it comes to pricing, there are multiple variables to take into account:</p><ol><li>Monthly pricing compared to number of products and features</li><li>Hosting costs</li><li>Transaction fees, not including payment processing fees.</li></ol><h3>1) Monthly pricing</h3><ul><li>Shopify pricing ranges from $14 a month for their starter plan with 25 products and limited features, to $179 a month for unlimited everything and full features.</li><li>Yahoo Small Business starts at $29,96 per month for their starter plan with 50.000 products, and limited features, to $224,96 per month for all of their features (and the 50.000 products).</li><li>Magento Go comes in at $15 a month for their starter plan, with 100 products and full feature availability. Their most expensive plan is $125 a month for 10.000 products.</li></ul><h3>2) Hosting costs</h3><ul><li>Shopify offers enough storage space on all plans compared to the number of products, and unlimited bandwidth (with CDN enabled).</li><li>Yahoo Small Business offers unlimited storage and bandwidth (fair-use) on all their plans.</li><li>Magento Go comes with a limited amount of storage and bandwidth on all plans. Even when you pay the $125 per month, you still only get 5 GB of storage and 32 GB of bandwidth. With 10.000 products offered, that’s not enough. And their overage charges are way too expensive ($10 for each 1 GB of bandwidth you overuse). CDN is included.</li></ul><h3>3) Transaction fees</h3><ul><li>Shopify starts with a 2% transaction fee for their starter plan, up to no transaction fee for their highest plan.</li><li>Yahoo Small Business has a 1,5% transaction fee for their starter plan, down to a 0,75% fee for their most expensive plan.</li><li>Magento Go charges no transaction fees on any of their plans.</li></ul><h2>Conclusion</h2><p>When it comes to features, nothing beats Magento Go. But this comes at a cost: their hosting is priced very expensive (but relieves you of the hassles of running Magento properly), and there’s a steep learning curve. If you’re a developer, Magento presents you with plenty of business opportunities: setting up, SEO, custom themes, app development, consulting &#8211; all areas in which you can show your expertise. And for an end-user they have the handy setup wizard. But it takes time and patience to build your store properly, both of which you might be lacking when you’re excited to start your e-commerce adventure.</p><p>Shopify is another developer friendly piece of software, and you’re openly invited to join their Expert network. Or develop themes and apps, and sell them in their marketplace. For a end-user point of view, Shopify can become quite costly. Standard functionality is a bit limited, and they very much rely on apps to extend it. But not all of these apps are free. Same goes for the themes, there are some good free themes, but to stand out you need to buy a theme. It is very easy to use though, and could perfectly serve as the start of your e-commerce future. And they sure are on the right track for when you want to go mobile.</p><p>Yahoo is a bit hard to place. They have a dedicated developer network, which is good. And they provide the tools to make it easy for as a developer to build/customize a theme, or extend functionality. Their backend is actually quite good, with lots of guidance built-in, and it all works very slick. Their marketing tools are great too. And they offer a nice set of features, although it relatively high priced.</p><p>But I can’t get rid of the feeling that they forgot to work on the front-end. Their themes are of the design you make when you built your first website in HTML. About 15 years ago. And mobile just don’t seem to exist at Yahoo. I admit this presents excellent business opportunities for a developer, but for an end-user this isn’t perfect. But, if you can get over this, Yahoo Small Business is very novice-friendly and can be a good start. And you can offer more products than you’ll probably have.</p><p>In the end it’s up to you, but whether you’re a developer or end-user, you should try before you buy (with Yahoo you actually have to buy to try, but still). Even though it’s possible to switch later on, this isn’t easy and the process might scare off your customers. The opportunity to do your homework is there, and it&#8217;s worth exploring how each matches with your needs.</p><p>And if you still have questions about these three providers, leave them in the comments and I’ll do my best to answer.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/testing-3-hosted-shopping-carts-operations/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>Testing 3 Hosted Shopping Carts</title><link>http://www.sitepoint.com/testing-3-hosted-shopping-carts/</link> <comments>http://www.sitepoint.com/testing-3-hosted-shopping-carts/#comments</comments> <pubDate>Thu, 25 Apr 2013 00:12:08 +0000</pubDate> <dc:creator>Jacco Blankenspoor</dc:creator> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[ecommerce]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=65583</guid> <description><![CDATA[Jacco Blankenspoor runs a comparison of three major providers of hosted shopping cart solutions, finding pros and cons for each of Shopify, Yahoo and Magento's options. ]]></description> <content:encoded><![CDATA[<p></p><p>I recently stumbled on an article published in 2009 about <a
href="http://www.sitepoint.com/hosted-shopping-cart-solutions/">hosted shopping carts</a>, which made me wonder how today&#8217;s option compare.</p><p>Of the 10 companies listed, one has grown very significantly since then: Shopify. Yahoo, via Yahoo Small Business, is the second provider who is still doing really well, so let’s throw them in the mix as well. And to see how they keep up against any newcomers, let bring in the new and hot kid on the block: Magento Go, launched in 2011 and the hosted version of the Magento ecommerce platform.</p><p>In this article, I will compare the features of these three products, identifying significant pros and cons in each case. Tomorrow, I&#8217;ll cover setting each one up, how they deal with mobile and pricing.</p><p>What about self-hosting? I&#8217;ll cover that in a separate article next week. First, let&#8217;s look at the hosted options&#8217; features.</p><h2>Feature comparison</h2><p>At first glance, all hosted shopping carts may look the same. They can all process orders and keep track of inventory. But if that’s all there was to it, they would only be competing on price. There must be more to it than that.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p>I made a list of significant pros and cons for each provider. Some features are more important if you are a developer and not the end user, and vice versa. Where applicable, I will make note of this.</p><h3>Shopify</h3><p>Let’s start off with <a
href="http://www.shopify.com/">Shopify</a>, which has come a long way since it was listed in 2009. Shopify relies heavily on independent developers to improve their product, while maintaining the platform itself. It’s not so much just a shopping cart, more of a whole e-commerce infrastructure where both end-users and developers benefit. And before you think I get paid by Shopify for writing this, let me explain:</p><h4><i>Pros</i></h4><ul><li><strong>Templates &amp; plugins:</strong> with their own Theme store and App store, customers can choose from 150+ templates and hundreds of apps.</li><li><strong>Shopify Experts:</strong> Grouped by their expertise, Experts are experienced developers who can help a customer with their Shopify shop.</li><li><strong>Developer friendly:</strong> Guess who makes the themes? And the apps? And who do you think the Experts are? Right, <em>you</em> are (or at least you cán be ;-). There’s even a fund to get you paid while developing an app. And if you want to connect with a current app (with a RESTful API), you can build a special dev shop to test it out. And they promote you heavily. They really love developers, see what I mean?</li><li><strong>Hosting with CDN:</strong> While hosting certainly isn’t a specific feature (how else would you sell <em>hosted</em> shopping carts?), hooking it up to a CDN sure is.</li><li><strong>Mobile:</strong> Your visitors can see a optizimed mobile version of your site, and you can control your shop on your mobile.</li></ul><h4><i>Cons</i></h4><ul><li><strong>Themes:</strong> Being able to buy themes is great, but you practically have to. The free templates are scarce, and some of them look very much alike. The cheapest are $80, and this goes up to $180. Paying for a theme isn’t a bad thing, but given the fact you already need a paid subscription, one could expect more and better free themes. On the higher plans you are able to modify the HTML/CSS. You can build and upload your own theme, but developing from scratch can become really time consuming.</li><li><strong>Number of products:</strong> Shopify offers the least number of products you can list in your shop, compared to their monthly pricing. Also, not all of their features are available in their cheapest package.</li><li><strong>Built in functionality:</strong> Shopify relies a lot on their app system to add additional functionality, like upselling. The cost of this is that it’s rather basic when you first start.</li></ul><h3>Yahoo Small Business</h3><p>Also known as Yahoo Store (which originated from Viaweb), <a
href="http://www.google.com/url?q=http%3A%2F%2Fsmallbusiness.yahoo.com%2Fecommerce%2F&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNHfHfbcuKlpoUyRsLIui4yP9Xubmw">Yahoo Small Business</a> is the most “traditional” shopping cart of them all. But being in business since 1995 means they have seen it all, and they offer a huge amount of features to satisfy all sort of customers and developers. Features are clearly based on experience, and customer feedback.</p><h4><i>Pros</i></h4><ul><li><strong>Integration:</strong> You probably won’t find a payment, shipping or inventory solution you can’t connect with &#8211; they even have cash on delivery. And if you do find one, there’s an API.</li><li><strong>Coupons:</strong> A great way to generate sales, and available on every plan.</li><li><strong>Number of products:</strong> 50,000 products allowed, right from their starter plan.</li><li><strong>Developer network:</strong> Just like Shopify, Yahoo doeslike to work with developers. But you have to do a bit of searching (hint: <a
href="http://ysbdevelopers.com/">ysbdevelopers</a>).</li></ul><h4><i>Cons</i></h4><ul><li><strong>No plugins or fancy themes:</strong> You build your store with a design wizard, or pre-made (pretty ugly) templates. And there aren’t any plug-and-play plugins available. This does, however, provide an opportunity if you’re a developer, since a customer will more likely turn to you for extended functionality (remember the APIs).</li><li><strong>Feature availability:</strong> Features like upsell, cross sell and gift certificates are great to have, but only available in the more expensive plans.</li></ul><h3>Magento Go</h3><p><a
href="http://go.magento.com/">Magento Go </a>is the hosted version of the popular Magento eCommerce software, hosted by the developers of Magento themselves. One of the main reasons for using Magento Go instead of hosting it yourself, is it can be a real beast to host. You need a better than average server/VPS to host it, and it needs daily cleanup to keep it running smooth. It isn’t just a hosted version of their free community edition, they actually added some useful features to justify the price.</p><h4><i>Pros</i></h4><ul><li><strong>Feature set:</strong> All of the offered features are available on every plan. And within their feature list you&#8217;ll find coupons, gift cards, wish lists, cross- and upsells and related products. To name a few. And to top it off, you can expand your shop with plugins (or extensions as they call them).</li><li><strong>Speed:</strong> They know how to host it, which means they can deliver a fast site without modifications of plugins needed. And they offer you a CDN.</li><li><strong>A developer&#8217;s new best friend:</strong> Magento Go is a developer&#8217;s dream come true, since it offers lots of opportunities for you to step in. You don’t have to worry about the hosting, so you can focus on stuff like design (you can add your own CSS and scripts), SEO (more options than an average business user can cope) and consulting (how to set it up and actually use all the features).</li></ul><h3><i>Cons</i></h3><ul><li><strong>Feature set:</strong> Magento isn’t the easiest store to set up, and it takes a steep learning curve before being able to use all its features. It can be very overwhelming.</li><li><strong>Themes and plugins:</strong> You can only select the themes and plugins which are provided on the Magento Go platform itself. Unlike the self-hosted version (Magento Community Edition), you can’t use the full range of available themes and plugins. Especially with themes this means you have a limited amount of free themes.</li><li><strong>Number or products:</strong> You can offer a few more products in the starter plan than Shopify, but with 100 products it’s still not that much.</li></ul><p>So, now we have an overview of the features offered by Shopify, Yahoo Small Business and Magento Go. They have much in common, but also have significant differences to each other.</p><p>Some of these differences will become more apparent as we go through the set-up process, look at how they handle mobile and discuss pricing options. That&#8217;s tomorrow&#8217;s article.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/testing-3-hosted-shopping-carts/feed/</wfw:commentRss> <slash:comments>10</slash:comments> </item> <item><title>Create and Deploy an App: Desktop vs Cloud</title><link>http://www.sitepoint.com/create-and-deploy-an-app-desktop-vs-cloud/</link> <comments>http://www.sitepoint.com/create-and-deploy-an-app-desktop-vs-cloud/#comments</comments> <pubDate>Thu, 04 Apr 2013 11:12:54 +0000</pubDate> <dc:creator>Eugene Ivantsov</dc:creator> <category><![CDATA[CloudSpring]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=65168</guid> <description><![CDATA[Eugene Ivantsov wanted to find out just how the creation and deployment of an app via a cloud-based IDE would compare with a desktop IDE. So he tried it.]]></description> <content:encoded><![CDATA[<p></p><p>Cloud technologies have penetrated virtually every industry, from IT, finance and marketing to education, government and even the public sector. No downloads, instant access to services, immediate exchange of information &#8211; this is just a short list of the benefits the cloud can offer.</p><p>When it comes to software, nearly every desktop app now has several web based counterparts. For some people who grew up during the cloud boom, the use of desktop apps is an atavism. The last bastion of desktop software is the IDE &#8211; the system that developers use to create apps, services, SDKs etc.</p><p>It seems odd that every type of application has already moved to the cloud, but IDEs still hold on to the past.</p><p>This article doesn&#8217;t aim to discuss the pros and cons of cloud based and desktop IDEs. There are more than enough of such discussions online. It’s a question of time and history. The rising cloud market will definitely pursue an offensive, and it’s really interesting to watch it.</p><p>Easy onboarding is among the top advantages of cloud based IDEs, which means that in order to get an account and start building your first application, you will need around 2-3 mins. That&#8217;s because you don&#8217;t have to set up an environment and look for plugins for your IDE: everything’s already set up. It&#8217;s true, trying out new technologies is easier than ever!</p><p>The question that has preoccupied me for some time is “Just how long would it take to create a simple Spring app (out of a template) and deploy is to a Cloud Foundry, provided you have a clean Linux machine?”</p><p>The only thing to do, then, is to actually try it. After all, how can one prove the benefits of cloud IDEs other than by visually demonstrating it?</p><p>Below is a recording of our little experiment with fairly precise records of the time required to complete the abovementioned task, using two approaches: desktop (with Eclipse) and entirely in the cloud (with Codenvy).</p><p>See what you think.</p><p><iframe
src="http://player.vimeo.com/video/62501324" width="700" height="393" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe><p><a
href="http://vimeo.com/62501324">Desktop vs Codenvy</a> on <a
href="http://vimeo.com">Vimeo</a>.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/create-and-deploy-an-app-desktop-vs-cloud/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Public Cloud Migration: Where to Start</title><link>http://www.sitepoint.com/public-cloud-migration-where-to-start/</link> <comments>http://www.sitepoint.com/public-cloud-migration-where-to-start/#comments</comments> <pubDate>Thu, 14 Mar 2013 14:54:17 +0000</pubDate> <dc:creator>Arthur Nichols</dc:creator> <category><![CDATA[Business]]></category> <category><![CDATA[CloudSpring]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=64534</guid> <description><![CDATA["We're moving to the cloud!!" Migrating data to the cloud requires a specific and well-informed strategy and careful execution. Arthur Nichols tells the story.]]></description> <content:encoded><![CDATA[<p></p><p>Much of the hype surrounding cloud computing seems to imply an immediate, one-size-fits-all invitation. It is, after all, a scalable service designed to meet the needs of any business as they may arise. However, migrating business to the cloud, especially the public variety, can necessitate complicated, careful planning.</p><p>The magnitude of repercussions from failure to properly strategize cloud migration varies significantly over different industries, scales of business, and even elements within a business. Fortunately, “divide and conquer” is a viable approach to the cloud. While there may be no choice but to accept that the move is going to happen, knowing the best place to start can be a sizable advantage.</p><p><b>Assess the Current Architecture</b></p><p>The first step in migrating to a public cloud is to fully understand your existing architecture. This is the only way to know what cloud options will be most useful to you. Your potential cloud configuration may encompass broad sections of your architecture or it may take advantage of cloud services designed to meet specific needs and address specific problems.</p><p>Like it or not, some organizations will have an easier time of utilizing public cloud services. Some deal primarily with data of a more sensitive nature and will likely run into compliance problems when looking at public cloud options. Others deal with less exploitable information. Some also have less complex and dated systems than others. The best strategy is to target the least critical section of the business’ processes and data for migration to the cloud.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p><b>Start Small, Start Safe</b></p><p>A move to public cloud resources does not have to happen all at once and in fact, it shouldn’t. Though the potential gain of a small move may be less significant, it will have less risk of costly failure. The allure of the cloud may be strong, but the pie will be waiting whenever you may find yourself ready to take a bigger slice. Also, the more broad and complex your cloud infrastructure becomes, the more energy will have to be focused on cloud management.</p><p>Cloud security has been mulled over frequently in 2012. While the security of public clouds is relatively untested, it is too early to label them as too vulnerable or perfectly safe. A lack of incident does not guarantee safety and accessibility does not guarantee vulnerability. Still, the parts of business that have less compliance restrictions will be less difficult to move to a public cloud, so this will make for a better initial candidate.</p><p>Elements of business that are more critical to the overall operation do not make good initial candidates for public cloud migration. Even the best laid plans can end up going out the window once things get rolling. The cost of interrupting critical operations is probably not worth the risk and experience may help develop a migration plan that has better certainty.</p><p><b>Expect Problems and Learn from Mistakes</b></p><p>Public cloud migration projects are bound to run into problems, especially in the adolescence of the cloud. Though the future may be brighter in this respect, one size doesn’t yet fit all in the cloud. Adapting existing systems will have some complications even for small projects. The bumps in the road will have costs, but the experience will help navigate future projects into the cloud if you can learn from them. At this point, between varying types of industry and data, everyone will have to do a bit of their own trial and error to build a good road map to success.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/public-cloud-migration-where-to-start/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Hosting Media in the Cloud</title><link>http://www.sitepoint.com/hosting-media-in-the-cloud/</link> <comments>http://www.sitepoint.com/hosting-media-in-the-cloud/#comments</comments> <pubDate>Thu, 07 Mar 2013 06:01:56 +0000</pubDate> <dc:creator>Boney Pandya</dc:creator> <category><![CDATA[CloudSpring]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=64032</guid> <description><![CDATA[There are some distinct advantages to hosting audio and video for your website in the cloud. Boney Pandya takes a look at (and a listen to) some options.]]></description> <content:encoded><![CDATA[<p></p><p>Cloud hosting has quickly grown to become one of the most popular hosting solutions available. Cloud computing in general eliminates the need to rely on dedicated hardware to perform functions like hosting, storing data, and other functions we’ve grown accustomed to using physical devices for. Today, I want to talk about using the cloud for media hosting.</p><p>Using the Cloud to host your audio and video files comes with several benefits that you simply can’t get with dedicated hardware. Let’s take a look at some of the biggest advantages of media hosting on the Cloud.</p><h2>Scalability</h2><p>One reason webmasters choose to use Cloud hosting is because of the flexibility and scalability it offers. With traditional hosting packages, scaling up or down can sometimes be a hassle. Cloud hosting gives you the opportunity to add resources on the fly. When you’re hosting media this becomes extremely important.</p><p>Since media files are larger than other file types, the more audio and videos you add, the more resources you will need. With Cloud hosting you can easily add new resources on the fly without having to reduce the user experience on your site due to downtime. The process of adding resources on the Cloud is quick, convenient, and simple.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><h2>Video Streaming</h2><p>Whether you’re streaming live or on demand video, using the Cloud to host your videos ensures high quality and stability. An issue that some companies run into when including videos on their site is a slowdown in web page loading times. This increases the bounce rate of your site (the amount of people who come to your site and exit) and affects the user experience as well.</p><p>When using the cloud to host your media, you get faster performance than you would get with dedicated hardware. Whether you’re streaming your videos in 320p or 1080p, you don’t have to sacrifice load time to showcase your videos. There are a few different options you have for streaming video with Cloud media hosting.</p><h3>Wowza Media Server</h3><p>You can install Wowza Media Server onto your VPS cloud hosting package. Wowza offers high quality live and on demand video streaming services for your website. Whether visitors are viewing your site from their 20” desktop monitor or their iPhone, the quality of your videos remains the same. You can stream videos with H.264/AVC so that HD videos stream fluidly right from your site.</p><h3>FFMpeg</h3><p>If you’re aiming to stream video across a variety of operating systems, FFMpeg hosting is a great option. Video Hosts install FFMpeg libraries and modules on your FFmepg hosting plan for you so you don’t have to deal with messy configurations. With FFMpeg, you also have the ability to convert the video type in real time utilizing scripts such as PHPMotion and Clip Bucket.  If you’re going to stream video, it’s an absolute necessity to stream in HD, and FFMpeg streams HD videos with no issues at all.</p><h3>Red5</h3><p>Red5 is a multi-use video streaming media server that allows you to get high quality video streaming in the Cloud. Whether you’re a small business just starting out or a global enterprise, Red5 media hosting in the Cloud is a great option. Red5 supports popular APIs such as</p><ul><li>NetConnection</li><li>NetStream</li><li>ShareObjects</li></ul><p>Because Red5 is so powerful, it really requires VPS cloud hosting or a dedicated server to run at full potential without sacrificing resources. Whether you want to stream video, hold video conferences, or other services, Red5 can get it done.</p><h2>Audio Streaming</h2><p>Media hosting is not just limited to video. You can also use Cloud media hosting account to stream audio as well. This opens the door to create live audio broadcast right on your website. Wowza media hosting and FFMpeg are capable of streaming audio, however you can look at these two specialized hosting services aimed at audio broadcasting too.</p><h3>ICEcast</h3><p>A way to get creative and add a new dimension to your site is by offering up live audio broadcasts similar to Podcasts. This essentially gives you the ability to set up your own radio station right on your site and have visitors listen in real time. You could also use ICEcast for on demand audio as well.</p><p>When streaming your audio from the Cloud, you get high quality bandwidth which translates into clear and crisp quality sound from your audio streams. This is a great feature for musicians who want to place a live playlist on their site and let visitors listen at their leisure. There are limitless possibilities when you stream audio from the Cloud.</p><h3>SHOUTcast</h3><p>Another great option you have for streaming audio on the cloud is SHOUTcast. Although it is primarily used to stream live radio stations on the internet, it can also be used for on demand audio. When you host your audio in the Cloud, the audio playback is immaculate due to the improved CPU performance of cloud hosting.</p><p>All too often, webmasters are faced with the dilemma of having to lose audio quality when they upload their audio to the internet. SHOUTcast hosting on our Cloud VPS helps eliminate that issue by providing the highest quality sound possible.</p><h2>Create Your Own Video Sharing Site</h2><p>Video sharing and Tube sites have become extremely popular because through sites like YouTube, Vimeo, Hulu, MetaCafe and others. Right now is the perfect time to capitalize on this popularity and start your own video sharing site. Various YouTube Clone scripts such as PHPMotion, Clip-bucket and many more can help you achieve this.</p><p>Both of these services allow you to set up your own video sharing site with ease. Using a VPS to create a video sharing site is cost effective and helps ensure that the videos you stream are displayed at the highest quality possible. Remember, a VPS gives you the flexibility to run multiple scripts and applications so that you don’t have to take up your own computer’s space. This makes video sharing on a media hosting account an ideal situation.</p><h2>Other Benefits of Hosting Media in the Cloud</h2><p>In addition to everything mentioned above, there are even more benefits to using the Cloud to host your media.</p><p>Backing up your media is extremely important. Just like with a blog, if you lose your video content for any reason, you’re going to want to recover it. The difference is that with a blog it’s much easier to replicate the content than with a video or radio broadcast. With Cloud hosting, you can easily create backups routinely and save them to the Cloud rather than a physical memory unit. This frees up space on your computer or external hard drive and gives you the peace of mind knowing that your media is secure.</p><p>A great advantage of streaming media on the Cloud is automatic encoding. This means that your videos will be able to play on any type of device. You don’t have to rely on separate software to transcode your audio and video. Media hosting services support all of the most common media types such as:</p><ul><li>H.264</li><li>MP4</li><li>AAC</li><li>MPG</li><li>FLV</li><li>AVI</li><li>MP3</li><li>And more</li></ul><p>Finally, if you’re interested in streaming media on your site, be sure to check out Cloud media hosting solutions.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/hosting-media-in-the-cloud/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Database as a Service: MySQL in the Cloud</title><link>http://www.sitepoint.com/database-as-a-service-mysql-in-the-cloud/</link> <comments>http://www.sitepoint.com/database-as-a-service-mysql-in-the-cloud/#comments</comments> <pubDate>Thu, 28 Feb 2013 13:35:44 +0000</pubDate> <dc:creator>Jacco Blankenspoor</dc:creator> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[mysql]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=63703</guid> <description><![CDATA[Jacco Blankenspoor takes a look at some of the ways you can host your MySQL in the cloud, using some major players in the field as examples.]]></description> <content:encoded><![CDATA[<p></p><p>With everything hosted in the cloud nowadays, why wouldn’t you host your database in the cloud as well? In this article I will take a look at cloud providers offering MySQL cloud hosting. I will discuss their features, ease of use and price. This article will cover:</p><ul><li>two providers offering just MySQL in the cloud: ClearDB and <del>Xeround</del> (Xeround is closing down as of May 15th, 2013. <a
href="http://xeround.com/mysql-cloud-db-free-registration/" target="_blank">Read here</a>).</li><li>two major cloud providers that offer hosted MySQL as part of their total offering: Amazon RDS for MySQL and Google Cloud SQL.</li></ul><h2>Features</h2><p>Even though all providers offer a hosted MySQL database, there are some differences. You will find limitations with:</p><ul><li>Xeround: Limitation in full MySQL compatibility, like ALTER table functions, log files and more. See <a
href="http://xeround.com/developers/release-notes/#compatibility">release notes</a>. These limitations are mostly in place to make dynamic scalability possible.</li><li>Google Cloud SQL: Limitation in full MySQL compatibility, and features like user defined functions and MySQL replication. See <a
href="https://developers.google.com/cloud-sql/faq#supportmysqlfeatures">FAQ</a>.</li></ul><p>Amazon RDS for MySQL and Google Cloud SQL are pretty straightforward cloud-based MySQL instances, without much juice to it but with the added benefit of being in the cloud (when it comes to scaling up or down, easy cloning etc.). They simply allow you to host your database in their cloud infrastructure, with the above limitations. Amazon RDS for MySQL also has the option to have a replication standby in case of failure of your main database, and offers automated backups.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p>Selecting one of them depends mostly on which infrastructure you use to run your main applications. Amazon RDS would be the best fit if you host them on EC2 for example, because of low latencies. But the combo isn’t required, you can host a Google Cloud SQL database with an EC2 server.</p><p>Xeround en ClearDB take it up a notch, by providing high availability (100% uptime), easy backups and geo-distribution. Xeround tops it off with dynamic scalability for keeping up with size and throughput requirements. They both try to make it much easier for you to host your database in the cloud, without worrying about what happens when a node fails. They both run on Amazon AWS, as well as Rackspace Cloud and HP Cloud (Xeround) or Microsoft Azure (ClearDB).</p><h2>Ease of Use and Specific Functionality</h2><p>Now let’s have a look at how simple it is for each provider to get your database up and running.</p><p><a
href="http://aws.amazon.com/rds/"><b>Amazon RDS</b></a></p><p><img
class="alignnone size-full wp-image-63710" alt="Amazon RDS" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure18.png" width="604" height="411" /></p><p>You launch an Amazon RDS for MySQL instance like any other AWS instance, and within minutes you can access it. It does require you to have an active AWS account. Amazon offers a lot of options like automated backups, Multi-AZ deployment (standby replicated version of your database for fail-over) and Provisioned IOPS (I/O optimization) right from the set up, which is very convenient.</p><p>Amazon uses a database security group for your database instance, for which you need to authorize your server’s IP. Once it’s done, use your DB instance endpoint as the database server along with the login credentials you specified in your setup, and you’re done. You can also grant access to a specific EC2 security zone. Monitoring is running right away, and gives you insight into usage metrics like CPU, memory, latency etc. You can also set up alarms, to notify you whenever one of these metrics is crossing a specified threshold.</p><p><img
class="alignnone size-full wp-image-63711" alt="Amazon RDS" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure28.png" width="649" height="316" /></p><p><a
href="http://www.cleardb.com/"><b>ClearDB</b></a></p><p><img
class="alignnone size-full wp-image-63712" alt="ClearDB" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure39.png" width="677" height="94" /></p><p>Setting up ClearDB is literally done in a minute, but has one downside. You can only set it up from one of their partners, being Heroku, Microsft Azure Cloud or Appfog. I&#8217;m using the last one, Appfog. But it’s almost as easy with Heroku, where you can connect it with your app. Appfog uses its own environment variables for you to connect to your database with your app/site, which includes the database location and login credentials.</p><p>ClearDB doesn’t offer much fancy monitoring, just query performance and database growth (MBs). It allows you to make a backup yourself, but it automatically keeps track of the last five days of your database as part of its service.</p><p><img
class="alignnone size-full wp-image-63713" alt="ClearDB" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure48.png" width="545" height="362" /></p><p><a
href="https://developers.google.com/cloud-sql/"><b>Google Cloud SQL</b></a></p><p><img
class="alignnone size-full wp-image-63714" alt="Google Cloud SQL" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure55.png" width="509" height="344" /></p><p>Starting up a Google Cloud SQL database is done from the Google API site, and requires you to have an active account (confirmed with billing).  You spin up a new instance, and choose the settings you like. Google Cloud SQL offers automated replication of your database, where you can choose between synchronous replication (when updating your database you have to wait for replication to finish) or asynchronous replication (you don’t have to wait for update, which is faster but can cause problem with outages during backup).</p><p>You can connect your database to your Google App Engine app, or from an external resource. They offer a range of options to connect for management (Java based command line tool), or for your application (JDBC). Google Cloud SQL offers all the basic monitoring options, like reads, writes, queries and more. Google Cloud SQL automatically sets up a daily backup, and you can save up to 7 days of backup for free.</p><p><img
class="alignnone size-full wp-image-63715" alt="Google Cloud SQL" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure62.png" width="442" height="207" /></p><p><a
href="http://xeround.com/"><b>Xeround</b></a></p><p><img
class="alignnone size-full wp-image-63716" alt="Xeround" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure71.png" width="309" height="252" /></p><p>Just like ClearDB you can start up a Xeround database from Appfog and Heroku, but also as a stand-alone service. You simply sign up for Xeround, and add a new database. After a few minutes, it’s running. You will then be given two addresses for you to use as database location. One is internal, for if your site is in the same datacenter as your database, and one is an external address in case you’re hosted elsewhere.</p><p>Xeround offers four metrics for monitoring, in both numbers and graphs. You can’t make an backup with their free plan, but there’s always an automated copy standby for redundancy.</p><p><img
class="alignnone size-full wp-image-63717" alt="Xeround" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/02/figure81.png" width="694" height="78" /></p><h2>Pricing</h2><p>All providers (currently) provide a free plan:</p><p><i>Amazon RDS</i>: Micro DB instance (630 MB RAM) with 20 GB storage, 20 GB backup space and 10M I/Os a month (low IO capacity), as part of their free tier.</p><p><i>ClearDB</i>: Free plan offers 5 MB of storage, max. 10 connections, daily backups, low IO performance.</p><p><i>Google Cloud SQL</i>: One cloud instance with a small (unspecified) amount of RAM, 0.5 GB storage and a &#8220;reasonable&#8221; IO performance (Google intentionally remains vague about what you get: it’s a trial plan).</p><p><i>Xeround</i>: Free plan offers 10 MB of storage, max. 5 connections, max. 1 MB/s throughput, and no backups.</p><p>But what if you run a highly popular, database intensive site? How much would that cost? ClearDB and Xeround work with DB size, max. connections and IO performance, while Google Cloud SQL and Amazon RDS use the traditional instance size (where RAM comes in play). Here are some examples for each of the medium plans:</p><p><i>Amazon RDS</i>: Medium DB instance, 3.75 GB RAM, moderate I/O capacity, 5 GB storage, $129,60 per month.</p><p><i>ClearDB</i>: Scream DB, database size up to 10 GB, max. 40 connections, high I/O performance, $99.95 per month.</p><p><i>Google Cloud SQL</i>: D4, 2 GB RAM, 1.7M I/O per day, 5 GB storage, $175.80 per month.</p><p><i>Xeround</i>: PRO, database size up to 3 GB, up to 4,800 connections, unlimited throughput, daily backups, auto-scaling, $453.60 per month.</p><p>As you can see, Amazon RDS offers the most bang for the buck, but is conservative in guaranteeing I/O performance (although they are rolling out provisioned IOPS storage, which gives you more control of I/O). Google Cloud SQL has this more specified, but offers lower RAM for a higher price than Amazon RDS. A Google Cloud SQL instance will cache your storage in its RAM, reducing I/Os and improving load times. For Amazon RDS you’ll need Amazon ElastiCache, which is a paid service in its own right.</p><p>ClearDB and Xeround start alike, but differ a lot when more storage is used. To be fair, Xeround does offer a cheaper plan (BASIC), but it’s limited to 0.5 GB storage. This plan costs $17 per month, and ClearDB would cost $9.95 per month for 1 GB storage. And ClearDB has a dedicated environment starting at $399.95 per month, but that doesn’t compare to Xeround since the latter always uses a multi-tenant environment. Xeround PRO has an expensive SLA, and offer auto-scaling. But the price is steep, and is something which can influence your decision even if your database if just a few MBs when you start.</p><h2>Conclusion</h2><p>In this article I wanted to give you an impression of what is available in Database-as-a-Service. As with most cloud based services, the possibilities are endless. But Amazon RDS comes off as a good allrounder, with competitive pricing and a whole range of features. You can easily build a high availability database yourself, with automated replication and lots of monitoring options. What helps is that you probably are already at least a bit familiar with Amazon AWS if you’re into cloud computing, and RDS uses the familiar instance methods.</p><p>Google Cloud SQL provides an impressive offering, but can be a bit harder to set up. It helps if you are already familiar with the App Engine, but since Google Cloud isn’t as widely used as Amazon AWS it has a higher learning curve. They used the experience gained from running Google search to build their infrastructure, so it’s proven and fast. But you do pay the price for this speed.</p><p>ClearDB and Xeround seem like competitors at first, but they clearly want to distinguish themselves from each other, in both pricing and features. Their starter plans are mostly alike, but Xeround’s PRO plan is in a league of its own. It’s very pricey, but highly reliable and scalable. This doesn’t mean ClearDB isn’t reliable, but their approach is different and they know their limitations (being scalable is what makes Xeround not able to offer the full MySQL package, as described in their limitations at the beginning of this article).</p><p>They both do make a high availability MySQL database accessible, easy to setup (Xeround more universal than ClearDB) and affordable (if you keep it small), making full use of the cloud’s abilities. And for that achievement, they both are the winners in this comparison.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/database-as-a-service-mysql-in-the-cloud/feed/</wfw:commentRss> <slash:comments>10</slash:comments> </item> <item><title>The Benefits of Managed Hosting for Small Business</title><link>http://www.sitepoint.com/the-benefits-of-managed-hosting-for-small-business/</link> <comments>http://www.sitepoint.com/the-benefits-of-managed-hosting-for-small-business/#comments</comments> <pubDate>Tue, 26 Feb 2013 16:15:14 +0000</pubDate> <dc:creator>Boney Pandya</dc:creator> <category><![CDATA[Business]]></category> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[Web hosting and domains]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=63597</guid> <description><![CDATA[When is it better to outsource server hosting management? Boney Pandya argues that managed hosting might be the right choice more often than you think.]]></description> <content:encoded><![CDATA[<p></p><p
style="text-align: left;">Just about the last thing a small business running an online store or a company website wants to spend time, money and effort on is server management. That&#8217;s why the best solution is to go for fully managed hosting services.</p><p
style="text-align: left;">Sure, I <em>would</em> say that, working as I do for a provider of such services. But hear me out. I&#8217;ve seen enough web businesses, freelancers and small companies get into serious problems due to server issues to be totally confident that managed server hosting is the right answer for many.</p><h2 style="text-align: left;">Managed Hosting</h2><p
style="text-align: left;">So, what are fully managed hosting services? You&#8217;ve probably come across the phrase “managed hosting” many times, or have seen it offered on hosting providers&#8217; websites while doing your research. In this article, we&#8217;ll go into some detail to find out the real benefits of managed hosting services and whether it can help small businesses.</p><p
style="text-align: left;">In the simplest terms, Managed Hosting means the hosting provider takes care of all your server related issues. You not only rent the hardware from the host, but you also pay them for managing it. It&#8217;s similar to getting a full warranty with free oil changes and maintenance when buying a new car.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p
style="text-align: left;">In unmanaged hosting, you just rent the server from the hosting provider and you are solely responsible for all service and maintenance tasks. There is a middle ground, sometimes called self-managed hosting where &#8211; depending on the nature of your agreement &#8211; some basic server maintenance is provided but the day to day running of the servers, including dealing with most issues that come up, is in your hands.</p><p
style="text-align: left;">In order to discuss the benefits of Managed Hosting, I’ll break it down into two parts: the Technical Benefits and the Business Benefits.</p><h2 style="text-align: left;" align="center">Technical Benefits of Managed Hosting</h2><h3>Server Monitoring</h3><p
style="text-align: left;">Server monitoring is simply critical for your organization. It&#8217;s a process of constantly scanning the servers to search for any irregularities or potential failures. System admins constantly monitor the servers to identify such points of failures so that they can address them before they become major problems.</p><p
style="text-align: left;">The basic principle here is, as the saying goes, <i>“prevention is better than cure”</i>. In Managed Hosting, the consistent, detailed attention system admins provide in constantly monitoring servers, goes a long way to guaranteeing the good server uptime and network availability you want to provide to yourself and your clients.</p><p
style="text-align: left;">Server monitoring is not impossible to self-manage, but demands specific skill sets, time and money.</p><h3 style="text-align: left;">Security</h3><p
style="text-align: left;">Server security is a huge priority for any business. Server security covers various aspects of security under its umbrella such as:</p><ul
style="text-align: left;"><li>Running security audits</li><li>Spam filtering</li><li>Virus scanning</li><li>Software firewall configuration</li><li>OS updates</li></ul><p
style="text-align: left;">Hosting providers are well equipped with various tools and have tons of experience dealing with server security related issues. They constantly scan the operating system and core application to find security vulnerabilities, which they can fix in order to prevent the server from being attacked.</p><h3 style="text-align: left;">Managed Storage</h3><p
style="text-align: left;">The storage requirements of a company can and will change from time to time. The amount of space needed now by an organization may not be the same as they will need a few years or even months down the line. Getting the balance right again requires specific technical skills and an ongoing commitment and availability to give it proper attention. Managed storage means outsourcing a company&#8217;s storage needs to a managed services provider. This is beneficial for the company because it helps them reduce the costs related to buying and administering storage services.</p><h3 style="text-align: left;">Managed Database</h3><p
style="text-align: left;">This is very much on the same lines as Managed Storage, but calls on the skills and expertise of an experienced Database Administrator rather than more generalised system admins. The DBA acts as a software and service consultant to design the best database system to meet your needs and requirements. Managed Hosting providers typically have DBAs who are, at the minimum, experienced in SQL Server, MySQL and Oracle. So as a company you will definitely find the expertise that you need.</p><h3 style="text-align: left;">Backups</h3><p
style="text-align: left;">Lost data can be extremely costly for a company. It is therefore essential to have a process that regularly backs up your data, keeps its secure, and preserves its integrity. Research shows that small businesses can lose more than 50% of their data after a man-made or natural disaster occurs. With managed services, you as a business owner can have the peace of mind that your data is secure and backed up because your hosting provider has processes and procedures in place to deal with such scenarios.</p><p
style="text-align: left;">Now that we have looked at some of the technical benefits of managed hosting, let’s look at some of the business benefits.</p><h2 style="text-align: left;" align="center">Business Benefits of Managed Hosting</h2><h3 style="text-align: left;">Customized to Meet Your Needs</h3><p
style="text-align: left;">Every company has different needs, and good managed hosting solutions go beyond a one-size-fits-all to meet your individual requirements. You can get a solution customized as per your needs. This is good because you can negotiate with your provider to choose the service that best fits your needs and the ones that are most critical to you, based on your businees needs &#8211; and budget.</p><h3 style="text-align: left;">Reduced Operating Costs</h3><p
style="text-align: left;">A small business owner already has a lot of expenses to manage. Hiring in-house system admins and a DBA to undertake server and database management is just an added expense for the company. It’s often more financially feasible to hire a hosting partner that is already equipped with people who have the experience and skill to handle any server related issues.</p><h3 style="text-align: left;">Save Time and Money</h3><p
style="text-align: left;">In business, time is money. As a small business owner, the time you spending on managing servers &#8211; and managing the people who manage the servers &#8211; is time that could be better used concentrating on your core business instead. There are only 24 hours in a day and it is very easy to spend way too much time focusing on tasks like server management. This remains true at the best of times, when everything&#8217;s running smoothly, and becomes undeniable at times of crisis. You need to be focused on growing your businesses and looking at the big picture.</p><h2 style="text-align: left;">Conclusion</h2><p
style="text-align: left;">There&#8217;s no doubt that nothing I&#8217;ve said here will come as a terrible surprise to anyone who has a business that maintains a web presence. Even so, it&#8217;s not always easy or convenient to consider all of these factors at one time.This is why some businesses keep using unmanaged hosting or self-managed hosting: because they simply haven&#8217;t considered all aspects of the Managed Hosting option.</p><p
style="text-align: left;">I hope this article has gvien you a better understanding of what Managed Hosting services can offer and how they can be beneficial to you, your company and your clients.At the very least, I hope it helps you to review your current situation and explore what Managed Hosting can offer you.</p><p
style="text-align: left;">I&#8217;m confident you&#8217;ll find that sometimes it is simply better practice to outsource a task like server management and let the experts do their job to help your business.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/the-benefits-of-managed-hosting-for-small-business/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Optimization in the Cloud: aiCache</title><link>http://www.sitepoint.com/optimization-in-the-cloud-aicache-2/</link> <comments>http://www.sitepoint.com/optimization-in-the-cloud-aicache-2/#comments</comments> <pubDate>Thu, 31 Jan 2013 11:10:53 +0000</pubDate> <dc:creator>Jacco Blankenspoor</dc:creator> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[aiCache]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=63182</guid> <description><![CDATA[Jacco Blankenspoor tests aiCache to see if it delivers on its cloud-based promise of optimizing sites and lowering load times.]]></description> <content:encoded><![CDATA[<p></p><p>There are lots of way to optimize your site to make it go faster, and reduce your server load. This usually involves lots of tweaking your code and database, and can be quite a challenge when you want to to speed up a dynamic site, such as an ecommerce site.</p><p>aiCache offers you a shortcut for this, and promises it can speed up your site within 10 minutes with a speed improvement of up to 10x. Let’s see if that’s true.</p><h2>What is aiCache?</h2><p>As the name suggests, aiCache is a caching solution for your website. You put it in front of your own servers, and route your traffic over your aiCache server.</p><p>Built with the cloud in mind, you can deploy it as an Amazon EC2 AMI instance, which allows you to scale up when traffic rises.</p><p>It allows you to cache a dynamic site without changing your code.</p><p>It claims that on one (!) well configured server you can serve up to 160M reg/hr. aiCache also optimizes your site for mobile visitors, and gives you the ability to set it up as an DDoS firewall.</p><h2>How does it work?</h2><p>aiCache acts as a proxy, it will load the site as any client and then all the content specified in your config will be loaded into the instance’s RAM. This is where a major page load improvement comes from, and this relieves your origin server.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p>Each request received to your site is then loaded from this cache, which is updated when you change your content (based on the TTL of your content). It will only cache the content from your site itself. Externally loaded resources (tracking scripts for example) will still be loaded from it’s origin server.</p><p>You can use aiCache in a load balanced configuration, for redundancy. You can also use aiCache instances for your own global distribution network, using their partner Dyn. You simply deploy an instance in each region you desire, and set up traffic distribution rules. This way you can basically build your own smart CDN, not only for your static files, but for your dynamic pages as well.</p><p><img
class="alignnone size-full wp-image-63185" alt="Testing sitepoint.com" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure114.png" width="693" height="301" /></p><h2>Speeding up SitePoint.com</h2><p>Now let&#8217;s find out what kind of speed improvement you can expect. aiCache provides a nice tool for this. Using SitePoint.com as an example, these are the current results:</p><p><i>aiCache servers hosted in: US East &#8211; N. Virginia and US West &#8211; N. California. Original is hosted in US-East.</i></p><table
width="565" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="156">Test location</td><td
valign="top" width="108">Original website</td><td
valign="top" width="115">aiCache US East</td><td
valign="top" width="66">%</td><td
valign="top" width="120">aiCache US West</td><td
valign="top" width="59">%</td></tr><tr><td
valign="top" width="156">San Francisco</td><td
valign="top" width="108">4.861 sec</td><td
valign="top" width="115">3.834 sec</td><td
valign="top" width="66">- 21%</td><td
valign="top" width="120">3.782 sec</td><td
valign="top" width="59">- 22%</td></tr><tr><td
valign="top" width="156">Singapore</td><td
valign="top" width="108">8.85 sec</td><td
valign="top" width="115">6.44 sec</td><td
valign="top" width="66">- 27%</td><td
valign="top" width="120">6.426 sec</td><td
valign="top" width="59">- 27%</td></tr><tr><td
valign="top" width="156">Dublin</td><td
valign="top" width="108">5.958 sec</td><td
valign="top" width="115">4.274 sec</td><td
valign="top" width="66">- 28%</td><td
valign="top" width="120">4.546 sec</td><td
valign="top" width="59">- 24%</td></tr><tr><td
valign="top" width="156">Washington DC</td><td
valign="top" width="108">4.589 sec</td><td
valign="top" width="115">4.078 sec</td><td
valign="top" width="66">- 11%</td><td
valign="top" width="120">3.422 sec</td><td
valign="top" width="59">- 25%</td></tr></tbody></table><p><em>Note: aiCache uses Amazon AWS for this test. The load times are measured by Neustar.</em></p><p>As you can see, a 25% load time improvement should be easily achieved, even on a standard setup of aiCache. You can tweak it even further to improve these results. And besides reducing loading times, it also decreases your server load heavily so you can lower your hosting bill.</p><p>As this looks promising, it’s time to set up an aiCache for myself and see if it’s really that easy.</p><h2>Setting Up the aiCache EC2 Instance</h2><p>Before you can do anything, you need a working Amazon AWS account. You can start aiCache up from their own website, or do a search for it on the AWS Marketplace. You have to subscribe first, after which you will deploy an EC2 instance from the EC2 Dashboard.</p><p>What you exactly need to fill in is described in their Wiki, but you basically have to make a configuration file to specify which site you are powering up. You can store this in Amazon’s S3 for convenience. When this is done you’ll head to the EC2 section of AWS.</p><p>From the navigation on the left you can fire up the AMI screen, and do a search in the public AMIs for aiCache.</p><p><img
class="alignnone size-full wp-image-63186" alt="Marketplace" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure23.png" width="702" height="265" /></p><p>After selecting the right AMI, you can launch your instance.</p><p>I used the small instance for my example. After selecting it, you have to go through the EC2 routine to configure your instance. This is also the part where you have to fill in the the link to the config file you made in S3.</p><p>Then you launch, and wait for the instance to come alive. You can check if it’s working by filling in your public DNS in your browser. If the supposed site is loading, you’re okay.</p><p>And that’s it. It really takes just a few minutes to set it up. Waiting for your instance to come alive after launching it takes longer than configuring it. Once you are satisfied you only have to change your A record in your DNS settings, and you’re set.</p><h2>Test results</h2><p>After deploying my own instance, I did some tests on the load time again:</p><p><a
href="http://www.sitepoint.com">Sitepoint.com</a></p><table
width="624" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="156">Test location</td><td
valign="top" width="108">Original website</td><td
valign="top" width="115">aiCache US East</td><td
valign="top" width="66">%</td><td
valign="top" width="118">aiCache US West</td><td
valign="top" width="61">%</td></tr><tr><td
valign="top" width="156">San Francisco</td><td
valign="top" width="108">4.92 sec</td><td
valign="top" width="115">4.71 sec</td><td
valign="top" width="66">- 4%</td><td
valign="top" width="118">4.72 sec</td><td
valign="top" width="61">- 4%</td></tr><tr><td
valign="top" width="156">Singapore</td><td
valign="top" width="108">11.7 sec</td><td
valign="top" width="115">7.65 sec</td><td
valign="top" width="66">- 35%</td><td
valign="top" width="118">8.08 sec</td><td
valign="top" width="61">- 31%</td></tr><tr><td
valign="top" width="156">Dublin</td><td
valign="top" width="108">6.88 sec</td><td
valign="top" width="115">8.03 sec</td><td
valign="top" width="66">+ 17%</td><td
valign="top" width="118">7.68 sec</td><td
valign="top" width="61">+ 12%</td></tr><tr><td
valign="top" width="156">Washington DC</td><td
valign="top" width="108">5.52 sec</td><td
valign="top" width="115">4.06 sec</td><td
valign="top" width="66">- 26%</td><td
valign="top" width="118">3.49 sec</td><td
valign="top" width="61">- 37%</td></tr></tbody></table><p><i>Note: All the tests are done multiple times to exclude glitches</i></p><p>There are some interesting findings:</p><ul><li>The load times for San Francisco are the same for both the optimized and non-optimized site. This was consistent on every load.</li><li>Singapore would require an instance hosted locally to really benefit: even though the reduction is vast, load times are still too high.</li><li>Not much to win for Dublin, this would require a local instance as well.</li><li>The results for Washington DC are spectacular. And the aiCache sites were performing consistently, while the original site was bouncing up and down in load time.</li><li>The original testing and my tests were performed at different dates and times.</li></ul><p>Even though Sitepoint.com is well cached, it’s still a heavy site. It also loads a lot of external requests (mostly advertising) which aiCache can’t cache. But there is enough room to improve, at least for the west coast.</p><p>And these are just raw data: because of the caching, most of the visual loading of the site is done in just tens of milliseconds. This means that the visitors would experience your site as extremely fast, since most of it is shown before it’s fully loaded. And then there’s also the benefit of reduced server loads, even with just 4% load time reduction (like in San Francisco). This means cutting a few front-end servers, thus lowering your bill.</p><p>Now look at some other examples, to see where aiCache can benefit the most.</p><p><a
href="http://www.webtoolsreview.com">WebtoolsReview.com</a>: One of my own sites, currently being developed. Uses only the basic Twenty Eleven theme from WordPress.org, no external resource, only sample content.</p><table
width="623" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="156">Test location</td><td
valign="top" width="108">Original website</td><td
valign="top" width="115">aiCache US East</td><td
valign="top" width="66">%</td><td
valign="top" width="118">aiCache US West</td><td
valign="top" width="60">%</td></tr><tr><td
valign="top" width="156">San Francisco</td><td
valign="top" width="108">2.049 sec</td><td
valign="top" width="115">0.806 sec</td><td
valign="top" width="66">- 61%</td><td
valign="top" width="118">0.968 sec</td><td
valign="top" width="60">- 53%</td></tr><tr><td
valign="top" width="156">Singapore</td><td
valign="top" width="108">5.111 sec</td><td
valign="top" width="115">2.226 sec</td><td
valign="top" width="66">- 56%</td><td
valign="top" width="118">2.285 sec</td><td
valign="top" width="60">- 55%</td></tr><tr><td
valign="top" width="156">Dublin</td><td
valign="top" width="108">1.94 sec</td><td
valign="top" width="115">0.854 sec</td><td
valign="top" width="66">- 56%</td><td
valign="top" width="118">1.239 sec</td><td
valign="top" width="60">- 36%</td></tr><tr><td
valign="top" width="156">Washington DC</td><td
valign="top" width="108">1.368 sec</td><td
valign="top" width="115">0.754 sec</td><td
valign="top" width="66">- 45%</td><td
valign="top" width="118">0.779 sec</td><td
valign="top" width="60">- 43%</td></tr></tbody></table><p>As you can see, the original loading times are already very slow. Caching still shaves off around 50% of loading time.</p><p>Let’s see what AiCache can do for some of the largest (and best optimized) sites in around.</p><table
width="580" border="1" cellspacing="0" cellpadding="0"><tbody><tr><td
valign="top" width="157">Test location</td><td
valign="top" width="107">Original website</td><td
valign="top" width="115">Original website</td><td
valign="top" width="119">aiCache US West</td><td
valign="top" width="82">%</td></tr><tr><td
valign="top" width="157">San Francisco</td><td
valign="top" width="107"><a
href="http://www.google.com">Google.com</a></td><td
valign="top" width="115">1.52 sec</td><td
valign="top" width="119">0.968 sec</td><td
valign="top" width="82">- 36%</td></tr><tr><td
valign="top" width="157">Washington DC</td><td
valign="top" width="107"><a
href="http://www.google.com">Google.com</a></td><td
valign="top" width="115">1.475 sec</td><td
valign="top" width="119">0.798 sec</td><td
valign="top" width="82">- 46%</td></tr><tr><td
valign="top" width="157">San Francisco</td><td
valign="top" width="107"><a
href="http://www.youtube.com">Youtube.com</a></td><td
valign="top" width="115">2.565 sec</td><td
valign="top" width="119">2.349 sec</td><td
valign="top" width="82">- 8%</td></tr><tr><td
valign="top" width="157">Washington DC</td><td
valign="top" width="107"><a
href="http://www.youtube.com">Youtube.com</a></td><td
valign="top" width="115">2.863 sec</td><td
valign="top" width="119">2.072 sec</td><td
valign="top" width="82">- 28%</td></tr><tr><td
valign="top" width="157">San Francisco</td><td
valign="top" width="107"><a
href="http://www.yahoo.com">Yahoo.com</a></td><td
valign="top" width="115">3.349 sec</td><td
valign="top" width="119">1.264 sec</td><td
valign="top" width="82">- 62%</td></tr><tr><td
valign="top" width="157">Washington DC</td><td
valign="top" width="107"><a
href="http://www.yahoo.com">Yahoo.com</a></td><td
valign="top" width="115">3.414 sec</td><td
valign="top" width="119">0.896 sec</td><td
valign="top" width="82">- 74%</td></tr></tbody></table><p><i>For this test I only used the US server results.</i></p><p>As you can see, even Google.com, a very light site, can benefit from caching. Youtube.com, on the other hand, won’t benefit as much. As you can see in the waterfall below, their homepage loads a lot of images and small .js files, which are already served at the speed of light.</p><p>Yahoo.com can truly benefit from AiCache. It is a resource heavy site, which just loads faster when served up from memory, no matter how good your CDN is.</p><p><img
class="alignnone size-full wp-image-63187" alt="waterfall" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure33.png" width="714" height="248" /></p><p><i>Youtube waterfall.</i></p><h2>Pricing</h2><p>To be honest, aiCache comes at a cost.</p><p>Amazon currently is deploying a new developer payment model, but the “cheapest” option is by ordering it using the link on the aiCache site (<a
href="http://aicache.com/cloud_amazon.html">order aiCache</a>). They want to keep the pricing simple: An aiCache instance is twice the cost of a base instance. This comes down to $0.13 per hour for a small instance where you would normally pay $0.065 per hour for a base instance. There is also a $15 monthly fee for support. Running one instance costs you $108.60 per month.</p><p>This seems a lot, but in order to almost break-even this means cancelling two small (non-aiCache) instances, or one standard (not considering the monthly support fee). That is assuming you run three or more instances, since you always need your origin server.</p><h2>Conclusion</h2><p>aiCache looks like a great product, if you need it. It might not always give you a real speed improvement, but it does relieve the load on your server as an added benefit.</p><p>It’s a pricey solution when you’re only just running one server, but it may be a cost saver when you’ve got multiple instances working for you. And remember, in this review I only touched their caching feature, but there’s also mobile optimization and DDoS protection.</p><p>My own experiences confirm that they have a fantastic support team who helped me a lot with my research questions.</p><p>If you want to know if you can speed up your own site too, here’s the tool to do it: <a
href="http://aicache.com/deploy">http://aicache.com/deploy</a>.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/optimization-in-the-cloud-aicache-2/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>A Quick Introduction to Apache Cassandra</title><link>http://www.sitepoint.com/a-quick-introduction-to-apache-cassandra/</link> <comments>http://www.sitepoint.com/a-quick-introduction-to-apache-cassandra/#comments</comments> <pubDate>Thu, 31 Jan 2013 03:32:04 +0000</pubDate> <dc:creator>Nikolas Goebel</dc:creator> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[Programming]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=63169</guid> <description><![CDATA[Nikolas Goebel takes a look under the hood of Cassandra, an increasingly popular NoSQL database used by giants like NetFlix, eBay, Twitter and Reddit.]]></description> <content:encoded><![CDATA[<p></p><p>Cassandra, used by NetFlix, eBay, Twitter, Reddit and <a
href="http://www.datastax.com/cassandrausers">many others</a>, is one of today’s most popular NoSQL-databases in use. According to <a
href="http://cassandra.apache.org/">the website</a>, the largest known Cassandra setup involves over 300 TB of data on over 400 machines.</p><p>Cassandra provides a scalable, high-availability datastore with no single point of failure. Originally developed by <a
href="http://www.linkedin.com/in/avinashlakshman">Avinash Lakshman</a> (the author of Amazon Dynamo) and <a
href="http://www.linkedin.com/in/prmalik">Prashant Malik</a> at Facebook, to solve their Inbox-search problem, the code was published in July 2008 as free software, under the Apache V2 license. The development has continued at an amazing pace, driven in part by contributions from IBM, Twitter and Rackspace. Since February 2010, Cassandra has been an “Apache top-level project”.</p><h2>Architecture</h2><p>Interestingly, Cassandra forgoes the widely used Master-Slave setup, in favor of a peer-to-peer cluster. This contributes to Cassandra having no single-point-of-failure, as there is no master-server which, when faced with lots of requests or when breaking, would render all of its slaves useless. Any number of commodity servers can be grouped into a Cassandra cluster.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p>This architecture is a lot more complex to implement behind the scenes, but we won’t have to deal with that. The nice folks working at the Cassandra core bust their heads against the quirks of distributed systems (the interested reader might start <a
href="http://www.datastax.com/docs/0.8/dml/about_writes">here</a>, <a
href="http://wiki.apache.org/cassandra/ArchitectureOverview">here</a> or <a
href="http://en.wikipedia.org/wiki/Paxos_(computer_science)">here</a>, to learn more about how such a cluster design can be implemented).</p><p>Not having to distinguish between a Master and a Slave node allows you to add any number of machines to any cluster in any datacenter, without having to worry about what type of machine you need at the moment. Every server accepts requests from any client. Every server is equal.</p><h2> The CAP-Theorem &amp; Tunable Consistency</h2><p>Possibly the best-known peculiarity of distributed systems is the <a
href="http://en.wikipedia.org/wiki/CAP_theorem">CAP-Theorem</a> by Dr. E. A. Brewer. It states that of the three attributes, <i><span
style="text-decoration: underline;">C</span>onsistency</i>, <i><span
style="text-decoration: underline;">A</span>vailability</i> and <i><span
style="text-decoration: underline;">P</span>artition Tolerance, </i>any such system can only fulfill two at a time (take this with <a
href="http://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed">a grain of salt</a>).</p><p>Without going into too many details, RDBMS have for years focused on the first two, consistency and availability, allowing for such great things as transactions. The whole NoSQL movement (from a 10,000ft view) is essentially about choosing partition tolerance instead of (strong) consistency. This has led to the popular belief that NoSQL databases are completely unsuitable for applications requiring just that. And while this might be true for some, it isn’t for Cassandra.</p><p>One of Cassandra’s stand-out features is called “Tunable Consistency”. This means that the programmer can decide if performance or accuracy is more important, on a per-query level. For write-requests, Cassandra will either replicate to any available (replication) node, a quorum of nodes or to all nodes, even providing options how to deal with multi-datacenter setups.</p><p>For read-requests, you can instruct Cassandra to either wait for any available node (which might return stale data), a quorum of machines (thereby reducing the probability to get stale data) or to wait for every node, which will always return the latest data and provide us with our long-sought, strong consistency.</p><p>Learn more about Tunable Consistency <a
href="http://www.datastax.com/docs/0.8/dml/data_consistency">here.</a></p><h2>Data model</h2><p>On the surface, Cassandra’s data model seems to be quite relational. With this in mind, diving deeper into ColumnFamilies, SuperColumns and the likes, will make Cassandra look like an unfinished RDBMS, lacking features like JOINS and most rich-query capabilities.</p><p>To understand why databases like Cassandra, HBase and BigTable (I’ll call them DSS, <i>Distributed Storage Services</i>, from now on) were designed the way they are, we’ll first have to understand what they were built to be used for.</p><p>DSS were designed to handle enormous amounts of data, stored in billions of rows on large clusters. Relational databases incorporate a lot of things that make it hard to efficiently distribute them over multiple machines. DSS simply remove some or all of these ties. No operations are allowed, that require scanning extensive parts of the dataset, meaning no JOINS or rich-queries.</p><p>There are only two ways to query, by key or by key-range. The reason DSS keep their data model to the bare minimum is the fact, that a single table is far easier to distribute over multiple machines, than several, normalized relations or graphs.</p><p>Think of the ColumnFamily model as a (distributed Hash-)Map with up to three dimensions. The two-dimensional setup consists of just a ColumnFamily with some columns in it, “some” meaning a couple of billion if you so wish. So a ColumnFamily is just a map of columns.</p><p>I have yet to figure out why, but it seems as if all these terms are just names for different dimensions of a map. A three-dimensional Cassandra “table” would be achieved by putting SuperColumns into a ColumnFamily, thus making it a SuperColumnFamily (please hold back any cries of astonishment), a map of a map of columns.</p><p>In this setup, the SuperColumnFamily would represent the highest dimension and the SuperColumn would represent the two remaining dimensions, taking the place of the ColumnFamily in the previous example. This multi-dimensional map contains columns, triplets consisting of a name, a value and a timestamp.</p><p>Data storage in Cassandra is row-oriented, meaning that all contents of a row are serialized together on disk. Every row of columns has its unique key. Each row can hold up to 2 billion columns [²]. Furthermore, each row must fit onto a single server, because data is partitioned solely by row-key. As discussed in greater detail <a
href="http://wiki.apache.org/cassandra/CassandraLimitations">here</a>, some other limitations apply, that in most cases should not concern you.</p><h2>Is Cassandra right for me?</h2><p>Cassandra draws heavily from BigTable (data model) and Dynamo (architecture), two of the most well-known and powerful databases today. This alone might be enough to consider it, but I’ll go ahead and provide list of questions you may ask yourself:</p><p><b>1         </b><b>Do you require exceptional performance on large datasets?</b><br
/> Cassandra provides fantastic write- and very good read-throughputs (<a
href="http://www.networkworld.com/news/tech/2012/102212-nosql-263595.html?page=1">beating most popular competitors</a>), only comparable to HBase. Deciding between the two is mostly a matter of personal preference. If you don’t want the whole Hadoop stack with all its moving parts and increased architectural complexity, choose Cassandra, if Hadoop is fine, HBase may be the better integrated fit. If you’re dealing with small to medium data volumes, relational solutions become a lot more interesting, because of the flexibility they provide.</p><p><b>2        </b><b>Do you need rich, flexible queries and a high-level data model?<br
/> </b>Cassandra reduces its data model to the absolute minimum, in order to keep the dataset as partition-able as possible. This pays back when talking about linear scalability, but leaves you with “nothing more” than a distributed hash-map. But don’t judge too early, as even one of Google’s core technologies, <a
href="http://research.google.com/archive/bigtable.html">BigTable</a>, does exactly the same. Like C provides a programmer with fantastic performance at the cost of some comfort features like garbage collection, Cassandra provides you with a core piece of Google-scale technology, at the cost of dealing with indexes yourself or thinking about queries you’ll need beforehand.</p><p><b>3        </b><b>Do you require application transparency?</b></p><p>Because of Cassandra’s very low-level data model, applications require extensive knowledge about the dataset. If application transparency is what you need, Cassandra is not for you.</p><h2>Getting started</h2><p>If you’ve come to the decision that Cassandra might be worth a try, I’ll list a few starting points here. DataStax, a company providing Cassandra tools, support and solutions to enterprises, hosts a <a
href="http://www.datastax.com/products/community">community edition</a> to simplify things for you. The package includes smart installers for all major OS, DataStax’s utility to manage your Cassandra setup visually and some sample applications/databases.</p><p>Careful though, the package comes with python included, which might mess up your default python interpreter. In this case, just remove the DataStax python directory from your (PYTHON) PATH variable. Now pick a <a
href="http://wiki.apache.org/cassandra/ClientOptions">client</a> (recommended) or use <a
href="http://thrift.apache.org/">Thrift</a>, a framework for language independent services.</p><p>From then, you might want to check out <a
href="http://www.datastax.com/dev/tutorials">this reading list</a>, start experimenting immediately by following <a
href="http://nosql.mypopescu.com/post/573604395/tutorial-getting-started-with-cassandra">this tutorial</a> or try <a
href="http://www.rackspace.com/blog/cassandra-by-example/">Cassandra by example</a>.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/a-quick-introduction-to-apache-cassandra/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Cloud Contracts: 12 Ways to Protect Yourself</title><link>http://www.sitepoint.com/cloud-contracts-12-ways-to-protect-yourself/</link> <comments>http://www.sitepoint.com/cloud-contracts-12-ways-to-protect-yourself/#comments</comments> <pubDate>Tue, 22 Jan 2013 12:51:59 +0000</pubDate> <dc:creator>Valerie Helmbreck</dc:creator> <category><![CDATA[Business]]></category> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[contracts]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=62807</guid> <description><![CDATA[Veteran IT journalist, editor and publisher Valerie Helmbreck outlines possible pitfalls when negotiating cloud contracts - and how to avoid them.]]></description> <content:encoded><![CDATA[<p></p><p>Anyone who makes a move to the cloud expects lower costs, fewer hassles and rock-solid security.</p><p>Good luck with that.</p><p>As most computer professionals understand, promises in the technology world are easily broken and service is rarely what it&#8217;s supposed to be.</p><p>This is especially true with new and emerging tech tools and resources. The cloud&#8217;s no different. Today, its services face a variety of challenges, among them:</p><ul><li>Fluctuating market</li><li>Emerging and changing legal precedents</li><li>Acute lack of legislative and regulatory guidelines, and</li><li>Perplexing and convoluted contract agreements.</li></ul><p>You&#8217;re unlikely to have much influence over markets, the legal landscape or regulatory agencies.</p><p>Cloud contracts are another matter.</p><p>While a lot of providers will tell you their contracts are standard and set in stone, bargaining is the only way to find out for sure.</p><p>Don&#8217;t think of your cloud contract as just another outsourced function. This is a unique and dynamic relationship that involves your data, its accessibility and how you interact with it.</p><p>Consider these important aspects of your contract:</p><h2>Get lawyers and finance advisors involved from the start</h2><p>Their input will be needed to support IT expertise in the technology. If they don&#8217;t understand the technical risks, they can&#8217;t protect you from the threats you may encounter. Explaining technology to people who don&#8217;t work with it every day is a challenge. Having someone translate technical jargon may be a necessary part of your contract review and approval process.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><h2>Get references and recommendations</h2><p>Talk to other technologists and heed their advice. The cloud is new and so are its customers. If possible, talk with others in your industry who&#8217;ve had experience using the cloud. But don&#8217;t count on vendors to make the introductions. Seek out others in your field at conferences and other gatherings.</p><h2>Negotiate, if possible</h2><p>Many providers have a business model that’s impenetrable, but on the off chance yours doesn’t, see if you can negotiate items critical to your operations. As I mentioned before, you can only find out if terms are negotiable by actually negotiating with the vendor.</p><h2>Don&#8217;t get dumped</h2><p>Make sure the deal can’t be terminated without cause. This means ensuring an agreement to end services. If you can’t get that guarantee, be especially cautious.</p><h2>Guarantee an open door</h2><p>Conversely, make sure that you can get out of the agreement if the services you depend on are suspended or dropped by the provider. If this happens, you should be able to end the agreement and  pay no penalty.</p><h2>Craft an exit strategy</h2><p>It’s important that you are able to end services in a way that causes as little disruption as possible. Carefully define the vendor’s obligations to help you transfer out in a straightforward and simple manner that’s both orderly and organized. Be sure to be explicit about how long the vendor will keep your data.</p><h2>Don&#8217;t get bullied</h2><p>A vendor can hold your data hostage in a dispute, which means you could lose access to it if the relationship sours.  Make sure that can’t happen with legal language that protects you from this tactic.</p><h2>Get full disclosure</h2><p>You need to know every provider who’ll be storing or managing your data. If your provider sub-contracts some services to others, know who they are and where they’re located.</p><h2>Don&#8217;t get snagged in a merger or acquisition</h2><p>The cloud is young and volatile. Make sure your contract ensures services from new owners or successors.</p><h2>Secure the right to audit your vendor</h2><p>Cloud service consumers need to make sure they can bring in an independent auditor to validate that they’re getting what they’ve paid for from the vendor.</p><h2>Get acquainted with your vendor</h2><p>Many cloud providers are new and in the early stages of formation. Be sure you know who they are and where they are located so that you don’t wind up chasing down an offshore outfit that disappears with your data and your critical systems.</p><h2>Get your agreement on paper</h2><p>Many of today’s cloud agreements list the terms online and ask for customers to “click” to agree to them. For a lot of companies and especially government agencies you my work with, this won’t wash. Get a hard copy, wet-ink version that can only be amended with the agreement of both parties to the contract.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/cloud-contracts-12-ways-to-protect-yourself/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Who can beat Amazon at IaaS?</title><link>http://www.sitepoint.com/who-can-beat-amazon-at-iaas/</link> <comments>http://www.sitepoint.com/who-can-beat-amazon-at-iaas/#comments</comments> <pubDate>Wed, 16 Jan 2013 01:45:26 +0000</pubDate> <dc:creator>Joe Masters Emison</dc:creator> <category><![CDATA[Business]]></category> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[Amazon Web Services]]></category> <category><![CDATA[google compute engine]]></category> <category><![CDATA[Microsoft Windows Azure]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=62532</guid> <description><![CDATA[Joe Masters Emison looks at who in the cloud - if anyone - has the potential to compete with AWS for infrastructure as a service.]]></description> <content:encoded><![CDATA[<p></p><p>Amazon is the clear number one in Infrastructure-as-a-Service offerings.  Depending upon your definition of IaaS, number two is probably Microsoft, although it could be Rackspace&#8211;no one is publishing enough information to know for sure.</p><p>Amazon is obviously way in front; the most recent evidence of this is that Microsoft Azure had a 60+ hour outage this week, and searching for &#8220;Azure Outage&#8221; on Google News yields more stories about the Amazon Web Services outage two weeks ago than Azure.</p><p>So who&#8217;s got the best chance of beating Amazon?  My money is on Google.</p><p>Google is the only other company that has</p><ol
style="list-style-type: lower-alpha;"><li>enough money and equipment to compete on price, and</li><li>enough technical expertise to pull off what AWS has done.</li></ol><p>And that may sell Google short: the core of AWS is just a re-implementation of what Google invented in the first place. Several recent pieces in Wired cover this: <a
title="Wired Magainze 11/2012" href="http://www.wired.com/wiredenterprise/2012/11/amazon-google-secret-servers/" target="_blank">Amazon sneaking peeks at Google servers</a>, and <a
title="Wired Magazine 10/2012" href="http://www.wired.com/wiredenterprise/2012/10/ff-inside-google-data-center/" target="_blank">Inside a Google Data Center</a>.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p>Also, Google has one killer feature that AWS does not have and likely will not build any time soon: a global private network.  This means that regions for Google will be much more connected than AWS regions. </p><p>For example, you cannot share or transfer AMIs or EBS snapshots across AWS regions, but you should be able to with Google Compute Engine.  This immediately makes GCE more attractive for greenfield deployments that require high availability and/or have low RTOs.  And there really isn&#8217;t a price difference (or GCE is cheaper&#8211;I haven&#8217;t seen or run enough benchmarks to have a definitive answer here).</p><p>What about Microsoft? Microsoft has data centers around the world, and a more widely-used (and more unique) IaaS offering than Google. However, Microsoft&#8217;s Linux marketing has been lackluster, and with so much of the IaaS usage (and growth) around Linux, I don&#8217;t see Microsoft getting to number two before Google does.</p><p>In particular, I see the internal conflict of interest at Microsoft (promote Windows vs. have full OS support within Azure) as somewhat similar to the ones that plagued Sony around digital music (wanting to make good MP3 players vs. DRM requirements from Sony Music). </p><p>Azure is not going to have anywhere near the margins of Windows, so the marketing efforts of Azure simply can&#8217;t go head-to-head with AWS or GCE on Linux without someone freaking out about cannibalization.</p><p>I certainly expect&#8211;at least in the short term&#8211;for Microsoft to remain successful in selling solutions (Cloud included) to the same people who have been buying Microsoft for years.  But if a provider stands a chance of beating Amazon, I think it will need to capture a lot of the Linux market. </p><p>Why? </p><p>While it&#8217;s theoretically possible to orchestrate/automate Windows servers as one can Linux servers (with something like Puppet), it is much harder and less native/intuitive to do so with Windows.  The Windows standard practices revolve around humans using GUIs; Linux/Unix standard practices (command line, text configurations, one-function-per-tool) are much easier to automate, and fit much more naturally with IaaS architectures than Windows.</p><p>So it&#8217;s Google. </p><p>Good luck, Google!  We need the competition, if only to keep the prices low.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/who-can-beat-amazon-at-iaas/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Datomic</title><link>http://www.sitepoint.com/datomic/</link> <comments>http://www.sitepoint.com/datomic/#comments</comments> <pubDate>Thu, 10 Jan 2013 02:05:04 +0000</pubDate> <dc:creator>Nikolas Goebel</dc:creator> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[Datomic]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=62420</guid> <description><![CDATA[Nikolas Goebels puts Datomic through its paces, a new kind of DBMS that retains old data rather than replacing it when new data becomes available.]]></description> <content:encoded><![CDATA[<p></p><p>This is the first article in an occasional series on interesting database technologies oustide the (No)SQL mainstream. I will introduce you to the core concepts of these DBMS, share some thoughts on them and tell you where to find more information.</p><p>Most of this is not intended for immediate use in your next project: rather, I want to provide inspiration and communicate interesting new takes on the problems in this field. But if, someday, one of those underdogs becomes the status quo, you can tell everyone that you knew it before it was cool &#8230;</p><p>All jokes aside, I hope you’ll enjoy these. Let’s get started.</p><h2>Overview</h2><p>Datomic is the latest brain-child of Rich Hickey, the creator of Clojure. It was released earlier this year and is basically a new type of DBMS that incorporates his ideas about how today’s databases should work. It’s an elastically scalable, fact-based, time-sensitive database with support for ACID transactions and JOINs.</p><p>Here are the core aspects this interesting piece of technology revolves around:</p><ol
start="1"><li>A novel architecture. Peers, Apps and the Transactor.</li><li>A fact-based data-model.</li><li>A powerful, declarative query language, “Datalog”.</li></ol><p>The Datomic team wants its DBMS to provide the first, “real” record implementation: records in the pre-computer age preserved information about the past, whereas in todays databases old data is only overwritten with new. Datomic changes that, and preserves all information, differentiating between information by making time  an integral part of the system.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><h2>1. A novel architecture</h2><p>The single most revolutionary thing about Datomic would be its architecture. Datomic puts the brain of your app back into the client. In a traditional setup, the server handles everything from queries and transactions to actually storing the data. With increasing load, more servers are added and the dataset is sharded across these. As most of todays NoSQL databases show, this method works very well, but comes at the cost of some “brain”, as Mr. Hickey argues. The loss of consistency and/or query-power is a well-known tradeoff for scale.</p><p>To achieve distributed storage, but with a powerful query language  and consistent transactions, Datomic leverages existing scalable databases as simple distributed storage services. All the complex data processing is handled by the application itself. Almost as in a native desktop application (if you can remember one of those).</p><p>This brings us to the first cornerstone of the Datomic infrastructure:</p><h3>The Peer Application</h3><p>A peer is created by embedding the Datomic library into your client-code. From then, every instance of your application will be able to:</p><ul><li><span
style="text-decoration: line-through;">●        </span>communicate with the Transactor and storage services</li><li><span
style="text-decoration: line-through;">●        </span>run Datalog queries, access data and handle caching of the working set</li></ul><p>Every peer manages its own working-set of data in memory and synchronizes with a “Live Index” of the global dataset. This allows the application to run very flexible queries without the need for roundtrips (more on that under “Criticism”).</p><p>But so far, we’ve only got back query power. To also re-enable consistent transactions, Datomic takes a step further: it makes the storage service read-only and forces all writes through a new kind of architectural component, the “Transactor”.</p><h3>The Transactor</h3><p>The Transactor will:</p><ul><li><span
style="text-decoration: line-through;">●        </span>handle ACID transactions</li><li><span
style="text-decoration: line-through;">●        </span>synchronously write to redundant storage</li><li><span
style="text-decoration: line-through;">●        </span>communicate changes to Peers</li><li><span
style="text-decoration: line-through;">●        </span>indexing your dataset in the background</li></ul><p>It seems as if the Datomic Team banished everything that made Relational DBMS hard to scale in a separate module, and tried not to worry too hard about it. For example, the <a
href="http://www.datomic.com/rationale.html">Datomic-Rationale</a> states:</p><p><em>“When reads are separated from writes, writes are never held up by queries. In the Datomic architecture, the transactor is dedicated to transactions, and need not service reads at all!”</em></p><p>and</p><p><em>“Putting query engines in peers makes query capability as elastic as the applications themselves. In addition, putting query engines into the applications themselves means they never wait on each other&#8217;s queries.”</em></p><p>The first statement is true for some read-operations, but I couldn’t find a hint as to how the Transactor handles reads in transactions. Though it is mentioned that <em>“Each peer and transactor manages its own local cache of data segments, in memory”</em>, which would require perfect cache synchronisation. Otherwise consistency is only guaranteed for one peer, which quite frankly is pointless. Hopefully, this management overhead won’t neutralize the promising ACID capabilities and the performance gains of in-memory operations.</p><p>The second quote makes initial sense, but still raises a few concerns:</p><p>What happens when one Transactor faces too much load? The Datomic team would like to avoid sharding, but wouldn’t exactly that be necessary at some point? Also, even if we pretend that the number of transactions wouldn’t increase with more peers, the time it takes to transmit changes to all of them sure does.</p><p>In conclusion, the Transactor could be an amazing thing to have with smaller datasets but may become a potential performance bottleneck or Single Point of Failure.</p><h3>Storage services</h3><p>These services handle the distributed storage of data. Some possibilities:</p><ul><li><span
style="text-decoration: line-through;">●        </span>Transactor-Local storage (free, useful for playing with Datomic on a single machine)</li><li><span
style="text-decoration: line-through;">●        </span>SQL Databases (require Datomic Pro)</li><li><span
style="text-decoration: line-through;">●        </span>DynamoDB (require Datomic Pro)</li><li><span
style="text-decoration: line-through;">●        </span>Infinispan Memory Cluster (require Datomic Pro)</li></ul><p>&#8230; plus a few more. Storage service support could be one big reason to try out Datomic, but unfortunately, only the temporary local storage is available for Datomic Free users (aka users who aren’t willing to pay $3,000+ for a brand new DBMS).</p><p>All in all, the Datomic architecture comes with loads of innovative ideas and potential benefits, but its real-world applicability remains to be proven.</p><p>Please read the detailed <a
href="http://docs.datomic.com/architecture.html">architecture overview</a> in the Datomic documentation or watch <a
href="http://www.youtube.com/watch?feature=player_embedded&amp;v=RKcqYZZ9RDY">this 20 minute video</a> by Mr. Hickey himself.</p><p><img
class="alignnone size-full wp-image-62421" title="datomic" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/datomic.png" alt="Datomic strucure" width="598" height="310" /></p><p><em>(Original image taken from </em><a
href="http://docs.datomic.com/architecture.html">here.)</a></p><h2>2. A fact-based data-model</h2><p>Datomic doesn’t model data as documents, objects or rows in a table. Instead, data is represented as immutable facts called “Datoms”. They are made up of four pieces:</p><ol
start="1"><li>Entity</li><li>Attribute</li><li>Value</li><li>Transaction timestamp</li></ol><p>Datoms are highly reminiscent of the subject-predicate-object scheme used in RDF Triplestores.</p><p>Anything can be a datom:</p><p><em>“John’s balance is $12,000” → [john :balance 12000 &lt;timestamp&gt;]</em></p><p>These attribute definitions are the only type of schema implied on the dataset.</p><p>In a relational database, this would be represented as a 12000 at the “john”-row in the “balance” cell (data is place-oriented). If now, a month later, John’s balance changes to 6,000, this specific cell would be wiped, and the new value would be put in. The fact, that John had 12,000 on his account a month ago is gone forever.</p><p>One of the main reasons for the creation of Datomic was the feeling, that today’s hardware is finally able to keep true records of data, something no other popular DBMS to date does. Datomic never updates data, it simply writes the new facts and keeps the old ones. This paves the way for lots of interesting, time-sensitive queries.</p><p>Because of its immutable, fact-based nature, Datomic would handle John’s new balance by simply inserting a new fact:</p><p><em>[john :balance 6000 &lt;timestamp2&gt;] </em></p><p>Facts are never lost. If John is interested in his current balance, he queries for the most recent Datom. But nothing would prevent him to query his complete balance-history anytime he wants. Besides, Datoms are, as the name implies, atomic, the highest possible form of normalization. You can express your data-model in as many entities as you want, the bigger picture is automatically constructed via implicit JOINS.</p><p>Other benefits</p><ul><li><span
style="text-decoration: line-through;">●        </span>Support for sparse, irregular or hierarchical data</li></ul><p><span
style="text-decoration: line-through;">○        </span>Attribute values can be references to other entities</p><ul><li><span
style="text-decoration: line-through;">●        </span>Native support for multi-valued attributes</li><li><span
style="text-decoration: line-through;">●        </span>No enforced schema</li><li><span
style="text-decoration: line-through;">●        </span>No need to store data history separately, time is an integral part of datomic</li></ul><p>Such flexibility allows Datomic to function as almost anything, for example a complete <a
href="https://github.com/datablend/blueprints/tree/master/blueprints-datomic-graph">graph API</a>.</p><p>Some fallbacks of this approach:</p><ul><li><span
style="text-decoration: line-through;">●        </span>Not suited for large, dynamic data</li></ul><p><span
style="text-decoration: line-through;">○        </span>As updates are always written as new datoms with a more recent timestamp, large, dynamic blobs of data would soon fill up quite a bit of space</p><ul><li><span
style="text-decoration: line-through;">●        </span>Flexible schemes tend to lead to rashness</li></ul><p><span
style="text-decoration: line-through;">○        </span>Some planning should still be done on the data-model</p><ul><li><span
style="text-decoration: line-through;">●        </span>Attribute conflicts</li></ul><p><span
style="text-decoration: line-through;">○        </span>Namespacing should be employed right from the beginning</p><h2>3. Datalog, the finder of lost facts</h2><p>Datomic queries are made up of “WHERE”, “FIND” and “IN” clauses, and a set of rules to apply to facts. The query processor then finds all matching facts in the database, taking into account implicit information</p><p>Rules are “fact-templates”, which all facts in the database are matched against.</p><p>Explicit rules could be something like:</p><p><em>            [?entity :age 42]</em></p><p>Implicit rules look like variable bindings:</p><p><em>            [?entity :age ?a]</em></p><p>and can be combined with LISP/Clojure-like expressions:</p><p><em>            [ (&lt; ?a 30) ] </em></p><p>A rule-set to match customers of age &gt; 40 who bought product p would look like this:</p><p><em>            [?customer :age ?a] [ (&gt; ?a 40) ] [?customer :bought p]</em></p><p>The rule-sets are then embedded into the basic query-skeleton:</p><p><em>            [:find &lt;variables&gt; :where &lt;rules&gt;]</em></p><p>&lt;variables&gt; is just the set of variables you want to have included in your results. We are only interested in the customer, not in his age, so our customer query would look like this:</p><p><em>            [:find ?customer :where [?customer :age ?a] [(&gt; ?a 40)] [?customer :bought p]]</em></p><p>We now run this via:</p><p><em>            Peer.q(query)</em></p><p>This syntax will probably take some getting used to (except you’re familiar with Clojure), but I find it to be very readable and, as the Datomic Rationale promises, “meaning is evident”.</p><h2>Querying the past</h2><p>To run your queries on your fact-history, no change in the query string is required:</p><p><em>            Peer.q(query, db.asOf(&lt;time&gt;)</em></p><p>You can also simulate your query on hypothetical, new data. Kind of like a predictive query about the future:</p><p><em>            Peer.q(query, db.with(&lt;data&gt;))</em></p><p>For more information on the query &#8211; syntax, please refer to the very good <a
href="http://docs.datomic.com/query.html">documentation</a> and this <a
href="http://www.youtube.com/watch?feature=player_embedded&amp;v=bAilFQdaiHk#at=572">video</a>.</p><h2>Use cases</h2><p>Datomic is certainly not here to kill every other DBMS, but it’s an interesting match for some applications. The one that came to my mind first was analytics:</p><ul><li><span
style="text-decoration: line-through;">●        </span>Facts are immutable, non-ACID writes should be fast, as analytics systems usually won’t require strong consistency</li><li><span
style="text-decoration: line-through;">●        </span>Facts are time-sensitive. This is quite interesting for analytics.</li></ul><p>Status messages, tweets or prices could also be stored much more naturally with regard to their dynamic nature. Also, since this DBMS was explicitly constructed to provide “real” records, everything record related should be an obvious fit.</p><p>In general, Datomic’s time-sensitive layer provides an interesting twist to your existing dataset. It can be used as a normal DBMS, with an additional dimension of insight. Imagine your e-commerce database including the complete price-history of every item and the engagement history of every customer. Wouldn’t it be fascinating to get a quick answer for otherwise complex questions? “When did this product became popular? &#8211; Oh it was after the 10$ price-drop.” “When did this customer started using the site every day? &#8211; That was two months ago, here is a graph of his daily time-on-page increase”.</p><h2>Criticism</h2><p>Revolutionary ideas, like the ones Datomic is based on, should always be appreciated, but analysed from multiple angles. The technology is too young to make a final judgement but some early criticism includes:</p><ul><li><span
style="text-decoration: line-through;">●        </span>Separation of data and processing.<br
/> All required data has to be moved to the client application, before it can be processed/queried. This might pose a problem once you get to larger datasets. Local cache will also inevitably constrain working-set growth. Once this upper-bound is passed, round-trips to the server-backend will be necessary again, with even bigger performance penalties. The Datomic team expects it’s approach to “work for most common use cases”, but this can’t be verified at this early stage.</li></ul><ul><li><span
style="text-decoration: line-through;">●        </span>The Transactor component as a Single Point of Failure and a bottleneck</li><li><span
style="text-decoration: line-through;">●        </span>Sharding might not be necessary for the read-only infrastructure, but the Transactor will need some type of sharding mechanism, once it has to deal with heavy loads.</li><li><span
style="text-decoration: line-through;">●        </span>The Datomic Pro pricing is quite restricting, and considering that Datomic Free is no good for any kind of production use, building some experimental projects will be pretty hard for the average developer.</li></ul><p>Alex Popescu wrote <a
href="http://nosql.mypopescu.com/post/19310504456/thoughts-about-datomic">a great post</a> on Datomic, focusing on these critical points and some more.</p><h2>Conclusion</h2><p>I personally think that many of the concepts and ideas behind Datomic, especially making time a first-class citizen, are great and bear a lot of potential. But I can’t see me using it in the near future, because I’d like to prove some of the team’s performance claims for myself, a desire not in keeping with my finances relative to a Pro license.</p><p>Otherwise, some of Datomic’s advanced features, like fulltext search, multiple data-sources (besides the distributed storage service) and the possibility to use the system for local data-processing only, could potentially be useful.</p><p>Please share any thoughts you might have in the comments!</p><h2>Dive deeper</h2><p><span
style="text-decoration: line-through;">○       </span><a
href="http://www.datomic.com/rationale.html">The Datomic Rationale</a></p><p><span
style="text-decoration: line-through;">○       </span><a
href="http://www.google.com/url?q=http%3A%2F%2Fwww.datomic.com%2Fvideos.html&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNFgNhj69yiJCKEAUxqH-_anxfezog">A few great videos on Datomic</a></p><p><span
style="text-decoration: line-through;">○       </span><a
href="http://architects.dzone.com/articles/back-future-datomic">Back to the Future with Datomic</a></p><p><span
style="text-decoration: line-through;">○       </span><a
href="http://thornydev.blogspot.de/2012/06/datomic-initial-analysis.html">Datomic: Initial Analysis</a> (comparing Datomic to other DBMS)</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/datomic/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Cloud Management: RightScale &amp; enStratus</title><link>http://www.sitepoint.com/cloud-management-rightscale-enstratus/</link> <comments>http://www.sitepoint.com/cloud-management-rightscale-enstratus/#comments</comments> <pubDate>Mon, 07 Jan 2013 05:49:54 +0000</pubDate> <dc:creator>Jacco Blankenspoor</dc:creator> <category><![CDATA[CloudSpring]]></category> <category><![CDATA[Programming]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=62338</guid> <description><![CDATA[Jacco Blankenspoor provides an in-depth look into the specific features of two brands of cloud management software.]]></description> <content:encoded><![CDATA[<p></p><h2>Introduction</h2><p><a
href="http://www.sitepoint.com/what-you-should-know-about-cloud-management/">In the first part of this series</a> we looked at what cloud management is about, and why you should use it. In this part we will take an in-depth look into the specific features of cloud management software.</p><p>We will take a look at <a
href="http://www.rightscale.com/">RightScale</a> and <a
href="http://www.enstratus.com/">enStratus</a> specifically. We will launch servers through their consoles and test out load balancing before we compare pricing of the two.</p><h2>RightScale</h2><p>With some big name organizations on their client list, RightScale is a large player in this market. They work together with major cloud providers, and support both public and private clouds. RightScale has its own marketplace, where you can find pre-defined templates and scripts to quickly set up a cloud server.</p><p>They offer their own configuration framework with no limits as to how you manage your cloud. There’s an extensive automation engine with lots of monitoring options to trigger scaling.</p><h3>Dashboard</h3><p>Rightscale’s simple navigation menu offers all the controls you would need:</p><p><img
class="alignnone size-full wp-image-62341" title="figure1" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure1.png" alt="navigation menu" width="600" height="223" /><br
/> You can choose to build or manage your own templates or scripts, or browse through their marketplace.<div
id='div-gpt-ad-1354739799360-6' style='width:728px; height:90px;'> <script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1354739799360-6'); });</script> </div></p><p><img
class="alignnone size-full wp-image-62342" title="figure2" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure2.png" alt="marketplace" width="600" height="362" /><br
/> You can decide to deploy a cloud server without a template, and set it up yourself.</p><p>Thanks to the API integration with at Amazon Web Service (AWS), you can launch the full AWS offering from within your RightScale dashboard. And once you’ve added cloud providers like Rackspace, you can manage these as well.</p><p>Their full dashboard also offers quick monitoring of your deployments and alerts, costs overview and quick launch of popular stacks with a link to the marketplace.</p><h3>Launching a server</h3><p>To see how easy it is to set up a cloud server from the RightScale dashboard, I decided to try and launch a preconfigured LAMP stack based WordPress site from the ServerTemplates.</p><p><img
class="alignnone size-full wp-image-62343" title="figure3" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure3.png" alt="launch a server" width="600" height="122" /></p><p>In the marketplace, I found a WordPress AMI (Amazon Machine Image).</p><p><img
class="alignnone size-full wp-image-62344" title="figure4" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure4.png" alt="Wordpress AMI" width="600" height="253" /></p><p>After you select “Import”, you can add a cloud server based on this template. You will see the cloud providers you added previously.</p><p><img
class="alignnone size-full wp-image-62345" title="figure5" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure5.png" alt="template" width="600" height="430" /></p><p>All the needed settings are inherited from the template, but you always have the possibility to change the settings. If you’re all done, just hit launch and the cloud server is deployed.</p><p>And, after you wait a few minutes, your site is up.</p><p><img
class="alignnone size-full wp-image-62346" title="figure6" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure6.png" alt="site is up" width="465" height="204" /></p><p>Monitoring offers you wealth of information giving you overview of your deployments, an events list to keep you updated. You can also set up alerts to keep you informed of anomalies, if any.</p><p><img
class="alignnone size-full wp-image-62347" title="figure7" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure7.png" alt="monitoring" width="600" height="288" /></p><h3>Auto-scaling</h3><p>One of the main benefits of cloud management is the ability to auto-scale your cloud servers. This means adding or removing servers based on specific parameters you set. This can be based on a server load over a period of time, memory usage or I/O wait, for example. Or you can use it to replace a stalled server.</p><p>You start the set-up by adding a server array. This is where you specify how many servers you initially need, what is the maximum number of servers, and by how many it should scale to. Just like adding servers manually, you begin by selecting a server template and configuring it.</p><p><img
class="alignnone size-full wp-image-62348" title="figure8" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure8.png" alt="select template" width="600" height="375" /></p><p>The auto-scaling decisions are determined by votes, made by the individual servers. This works as a control mechanism, to prevent hasty decisions when there’s a spike in the parameters.</p><p><img
class="alignnone size-full wp-image-62349" title="figure9" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure9.png" alt="spike" width="600" height="196" /></p><p>What triggers an alert is in my example specified in the template, but you can set these up yourself as well.</p><p>You then decide what to do: send yourself an email or have it give a vote to grow or shrink. Or you can set up a schedule to start or stop servers on a specific time or day, to cope with expected traffic.</p><p>To give you a simple example, I decided to set up my array with a minimum of three servers. This means that if one server goes down, it is replaced to the minimum of three. After I launched my array, I manually terminated two of my servers. Auto-scaling made sure it was replaced.</p><p><img
class="alignnone size-full wp-image-62350" title="figure10" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure10.png" alt="auto-scaling" width="600" height="51" /></p><p><img
class="alignnone size-full wp-image-62351" title="figure11" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure11.png" alt="replaced" width="600" height="140" /></p><p>After that, new servers are launched, as specified in the scaling settings. Note that even though the minimum is three, more servers are launched since it takes a while to get them up and running, and this ensures your minimum is always met. It’s always kept within your maximum.</p><h3>Pricing</h3><p>RightScale offers a free plan, where you can manage up to 5five servers on public clouds (private clouds is a paid add-on). If you want to manage more servers, you pay per RCU (RightScale Compute Unit). One RCU is one medium server for one hour. Smaller servers use less RCU. With their free plan this comes down to $0.12 per RCU, which is around $86 per month. This is without what you pay to your cloud provider.</p><p>You can upgrade to an Standard ($500 p/m) or Premium ($1000 p/m) plan, where you pay $0.06 per RCU. I want to thank the RightScale people for giving me access to their Enterprise plan for testing.</p><p>All of the features mentioned above are available in their free plan.</p><h2>enStratus</h2><p>enStratus positions itself as cloud management for enterprises. You can get enStratus’ tools both as software as a service, or an in-house installation. I’ll focus on their SaaS solution.</p><p>enStratus focuses on pure cloud management, where it does offer some basic server images but lets you fill in the applications. It allows you to make your own templates and script, and offers a handy designer to visually build your deployments.</p><h3>Dashboard</h3><p><img
class="alignnone size-full wp-image-62352" title="figure12" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure12.png" alt="dashboard" width="600" height="389" /></p><p>After logging in, enStratus offers a double navigation, with a top menu bar to cover all their features, as well as “Getting to know enStratus” section on the main dashboard with links to these features. They also provide you with a quick start section to get the motor running. There’s also a service status window, and information about how to contact support.</p><p><img
class="alignnone size-full wp-image-62353" title="figure13" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure13.png" alt="support" width="287" height="59" /></p><p>You can easily switch clouds or regions with their cloud selector.</p><h3>Launching a server</h3><p>As mentioned above, enStratus doesn’t offer a marketplace with predefined server templates, you’d have to make these yourself. You can fire up a server with an operating system preinstalled, so I will find out how easy it is to get this going.</p><p><img
class="alignnone size-full wp-image-62354" title="figure14" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure14.png" alt="get going" width="300" height="31" /></p><p>You can begin with the link in the quick start section, which takes you to a list of operating systems. All the major operating systems are present.</p><p><img
class="alignnone size-full wp-image-62355" title="figure15" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure15.png" alt="quick start" width="600" height="296" /></p><p>You can choose the OS you need, and hit the launch button.</p><p><img
class="alignnone size-full wp-image-62356" title="figure16" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure16.png" alt="choose OS and launch" width="600" height="357" /></p><p>A comprehensive pop-up gives you some settings to specify, like which data center you want to use, how much memory the server needs to have and whether you want to terminate or pause it after a certain time.</p><p><img
class="alignnone size-full wp-image-62357" title="figure17" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure17.png" alt="settings" width="600" height="80" /></p><p>While being built, you will find your server under “Jobs pending”, and once completed your server is listed in your server overview. You then can set up your server by logging in with SSH, and configuring your server.</p><p><img
class="alignnone size-full wp-image-62358" title="figure18" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure18.png" alt="jobs pending" width="215" height="223" /></p><p>enStratus keeps you informed about your running jobs with a small popup. There’s also an agent provided by enStratus which gives you more options to work with your server remotely. It’s mostly used for getting shell access, and needs to be installed on your server. You can also make an image of your current image, which comes in handy if you applied patches or updates.</p><h3>Auto-scaling</h3><p>enStratus works with a designer for setting up your auto-scaling cloud, integrated with one or more load balancers. When you use Rackspace you can designate a normal cloud server as a load balancer. With Amazon AWS you can use Elastic Load Balancing (ELB).</p><p><img
class="alignnone size-full wp-image-62359" title="figure19" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure19.png" alt="Elastic Load Balancing" width="600" height="237" /></p><p>You begin by adding a load balancer, after which you select the components to be in your setup. You can select components (tiers) for your application or front-end and then combine this with a database.</p><p>You can scale horizontally by adding more regions or cloud providers. It also keeps track of expected and actual costs.</p><p><img
class="alignnone size-full wp-image-62360" title="figure20" src="http://www.sitepoint.com/wp-content/uploads/1/files/2013/01/figure20.png" alt="track costs" width="600" height="319" /></p><p>For each tier you can specify the number or minimum and maximum servers, and when to scale up or down. You can select the servers you want to be in this tier.</p><p>This allows you to bring in low RAM servers in your front-end tier, and high RAM servers in your database tier for example. Using the designer brings you immense flexibility in building your cloud, both in functionality and scalability.</p><h3>Pricing</h3><p>enStratus offers a free plan, where you can manage up to 5 servers with most of their features included. After that, you move up to their Basic plan ($50 p/m), where you pay $0.05 per hour per server managed. This comes down to $36 per month per server, and also includes 30 backups. They combine a higher monthly price with a lower price per server, from $500 p/m with $0.04 per server hour to $5,000 p/m with $0.02 per server hour. At these rates you’ll also receive LADP, SAML and APIs.</p><h2>Conclusion</h2><p>At first both providers seem to offer the same features. And for the actual server management this is mostly true, each with their own approach. But when it comes to auto-scaling you will find big differences in how you can build up your deployments. Their free plans give you enough opportunity to see what you like. Their pricing differs too, in a way that enStratus charges per server no matter the size, and RightScale charges based on server size in combination with the quantity.</p><p>It’s worth doing the math before you make your choice, and calculate what each company will cost you when you become successful.</p><ul><li><a
href="http://www.rightscale.com/">RightScale</a></li><li><a
href="http://www.enstratus.com/">Enstratus</a></li></ul><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/cloud-management-rightscale-enstratus/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Change in the Wind: CloudSpring Moves to SitePoint</title><link>http://www.sitepoint.com/change-in-the-wind-cloudspring-moves-to-sitepoint/</link> <comments>http://www.sitepoint.com/change-in-the-wind-cloudspring-moves-to-sitepoint/#comments</comments> <pubDate>Mon, 10 Dec 2012 13:01:05 +0000</pubDate> <dc:creator>Tom Museth</dc:creator> <category><![CDATA[CloudSpring]]></category> <guid
isPermaLink="false">http://www.sitepoint.com/?p=61857</guid> <description><![CDATA[Change is afoot, CloudSpring fans. Since CloudSpring launched on the SitePoint network in July 2011, we&#8217;ve brought you all the news there is to know about the world of cloud computing, kept you abreast of developments in cloud-related technologies, and published handy tutorials on migrating apps, securing data, improving performance &#8230; you name it. From [...]]]></description> <content:encoded><![CDATA[<p></p><p>Change is afoot, CloudSpring fans.</p><p>Since CloudSpring launched on the SitePoint network in July 2011, we&#8217;ve brought you all the news there is to know about the world of cloud computing, kept you abreast of developments in cloud-related technologies, and published handy tutorials on migrating apps, securing data, improving performance &#8230; you name it. From SaaS, IaaS and PaaS to AWS, Oracle and Google Compute Engine, we&#8217;ve aimed to cover all aspects of the cloud and its role on the web.</p><p>The SitePoint network is always evolving, and as part of a revamp for 2013, we&#8217;ve brought CloudSpring back into our main site. We think it&#8217;s a smarter fit &#8212; SitePoint explores a diverse range of web technologies, and we feel cloud computing falls neatly under the SitePoint umbrella.</p><p>So as of today you&#8217;ll see a dedicated <a
href="http://www.sitepoint.com/category/cloudspring/">CloudSpring section</a> on SitePoint. Here you&#8217;ll be able to find all the latest and greatest articles and tutorials on the world of the cloud &#8212; not to mention all the content that&#8217;s been posted on CloudSpring over the last 18 months or so. We&#8217;ve got a skilled, dedicated bunch of writers with their heads in the cloud, and they&#8217;ll regularly be posting on the <a
href="http://www.sitepoint.com/category/cloudspring/">CloudSpring page</a>. Hopefully we can open up the world of cloud computing to a wide audience, and get a good dialogue happening among you all.</p><p>The web is always changing; and CloudSpring is changing with it. Check out the brand new CloudSpring section &#8212; and as always, your feedback is welcome.</p><div
class='after-content-widget-1'><div
id="sitepointcontextualcontentmanagerwidget-5" class="widget widget_sitepointcontextualcontentmanagerwidget"><div
class="dfp-ad show-desktop"><div
id="div-gpt-ad-1354739799360-7" style="width: 728px; height: 90px;"> <script type="text/javascript">googletag.cmd.push(function() { googletag.display("div-gpt-ad-1354739799360-7"); });</script> </div></div></div></div>]]></content:encoded> <wfw:commentRss>http://www.sitepoint.com/change-in-the-wind-cloudspring-moves-to-sitepoint/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using memcached
Database Caching 42/72 queries in 0.138 seconds using memcached
Object Caching 1793/1957 objects using memcached

Served from: www.sitepoint.com @ 2013-05-13 13:43:05 --