It is 2016 and almost a decade since Amazon launched its all-conquering AWS public cloud service.

Infrastructure hosting as we once knew it, has been reduced to a commodity purchase. If you want to host a website or online application, it has never been easier.

Building a highly scalable, fully redundant environment can be done in minutes, using either a browser or one of hundreds of automation tools.

While infrastructure is boring, it is still an essential foundation of any platform.

For online retailers, things have never been better. Ecommerce sites can take full advantage of a wide range of technology solutions. The nirvana of website hosting is an achievable reality.

At the heart of it is automated scaling. A drop in website performance is detected (usually due to an increase in traffic) and more cloud instances are deployed.

This autoscale works in both directions, so if you have a lull in demand then your application runs on the minimum footprint. This means you only pay for what you use and it is driven by performance metrics.

At least that is how it is supposed to work. So how come almost no one in ecommerce is doing it?

Autoscale isn’t a new concept and it works just fine (ask Netflix). In my experience of working with over 250 online brands, successful implementation is almost zero.

Let’s have a look at why:

Business problems

To begin with you need to be able to embrace cloud computing. In ecommerce this is primarily the domain of the smaller, more agile stores.

Traditional retailers (think leading department stores and supermarkets) typically use one of the big enterprise platforms from IBM or Oracle. These come with a restrictive licensing agreement.

Until there is a more capacity-based model (perhaps based on transactions or revenue) the option to use cloud is limited. These large complex platforms would also require a long and difficult migration project.

Further business problems materialise with the management of cloud services. There is still a general perception that costs will spiral out of control. The curse of shadow IT has been a blocker for adopting a more flexible approach for several years.

A strategic head of ecommerce can combat this by implementing a clear internal process for server instance creation.

The potential to run up a huge cloud hosting bill for services which aren’t being used is certainly a concern, but one which can be effectively managed.

Technical issues

The primary technical challenge to developing an effective autoscale platform is deployment latency. If you think about a typical ecommerce traffic peak, the sudden increase in traffic is usually very high.

This can be driven by a marketing event such as a TV advert, or something seasonal like a Black Friday sale.

The time taken to deploy a cloud server, while fast, is not instant. Deployment of the instance, application install and network configuration will take around five to ten minutes.

In the world of instant gratification, that is just too slow. By this stage you have missed your peak (and most important) customers. 

You can address this problem by scheduling your deployments. For example, if you know you are starting an online sale at 8am, then you can have your environments automatically deployed and configured by 7:30am.

While scheduling in this way might not be true autoscale, it alleviates the problem. It requires the infrastructure team to understand traffic patterns and be closely aligned to marketing activity. In some cases, that is a different problem entirely.

Building your environment is also not a trivial task. The skills and experience required are still considered quite specialised.

Equipping a team with relevant expertise is a significant commitment. DevOps engineers are in high demand.

The solution to this problem might be developing a training path to upskill current system admin roles. Alternatively, you can outsource or work with a specialist partner. Bridging the skills gap takes thought and dedication.

Risk of the Unknown 

The risk of getting this wrong, comes with potentially huge implications. A big hit on company sales and brand damage are at stake.

As a decision maker, if an automation project fails then it could have consequences on job security.

Why should you take the gamble, when the current solution already works?

Ecommerce failures have a direct impact on financial performance, especially for pureplay online retailers. Peak trading, when autoscale becomes most relevant, multiplies any problems.

Digital disruption is changing the status quo across many industry verticals. Startups which have technology at their core are able to deliver remarkable business efficiencies.

The prime retail example is of course Amazon. It has completely reset customer expectations for online service. The tipping point for decision-making on technology adoption is moving.

Soon the risk of doing nothing and being disrupted will be greater than that of embracing innovation. Being a fast follower requires agility and being prepared.

So when will the myth become reality?

Automated management and DevOps culture is building momentum. There is a reason it is in fashion: business agility.

Delaying code releases because of inflexible architecture is becoming non-viable.

Just as security is no-longer the number one concern of organisations adopting cloud, pay-for-what-you-use also offers a very attractive financial model.

More business critical applications are finding a home in cloud, so a future when autoscale is more widely adopted for ecommerce will not be far away.

Solving the process and management challenges is the first step on the journey.

Mike Bainbridge

Published 6 April, 2016 by Mike Bainbridge

1 more post from this author

You might be interested in

Comments (8)

Comment
No-profile-pic
Save or Cancel
Avatar-blank-50x50

Deri Jones, CEO at SciVisum Ltd

In our experience here of actual hands-on testing the capacity of websites - the answer is that absolutely auto-scaling can work.
But often it doesn't.

You mention the price/hassle of licensing software for a scalable platform: the smart-guys are building their cloud-sites on open source (= zero cost) platforms, so that removes per instance costs and licence admin: Linux, Docker, Apache, Ruby, Redis, MariaDB, ElasticSearch and more.

Costs-wise, yes your cloud AWS usage could go out of control, but that's manageable with a decent devops team keeping an eye on things, around the expected big peaks: and doing regular capacity tests, to check autoscaling is still as expected.

More of a problem on the sites we've load tested is the time-delay you mention under Technical issues. Scaling too slow can cause capacity to flatten unexpectedly: as can, counter-intuitively, auto-scaling down prematurely.

We load test some of the bigger UK websites; for example one electrical retailer achieving £240,000 per minute sales: and that one is doesn't use autoscale.

But some other big sites do make a good performance with autoscale, although it often takes two or three rounds of work to get desired capacity: test, analyse the problems, tweak and repeat.
And much easier on sites where there is a lot less user-state to care about.

Perhaps that the biggest single factor in your list, is Fear of the Unknown, I'd argue.

It's a big jump to go all the way: and the organisations that would benefit the most are the large ones, who also tend to be more risk averse: and also have more legacy stuff to interoperate with too, which increases the risk.

Even if auto-scaling is not on your 2016 road-map, it may be upon you before you know it: especially if one of your bean counters gets the religion and thinks the cost savings are easy!

about 2 years ago

Adam Coleman

Adam Coleman, Load Testing Engineer at SciVisum Ltd

eCommerce in particular is one of those areas of the digital space where the exact traffic profile you're expecting has a major impact on how well an auto-scaling solution will work for you.

As you rightly point out, even a provider such as Amazon takes a good five or ten minutes for new infrastructure to be spooled up, initialised and fully integrated into the network. Therefore, if you're expecting to see sudden but short-lived 'burst' traffic, then by the time your algorithm has triggered and the new hardware is in the pool ready for use the time has passed and your customers have already felt the impact of the surge.

However, equally, if your traffic is staggered over a longer period of time the scaling trigger may not be reached for some time after traffic begins to build up, and again, by the time it does it's usually too late, especially if the later parts of a user's journey are more resource intensive - such as a checkout process. Those new people coming in to browse might just tip things over the edge.

That's not to say that auto-scaling can't, or doesn't, work however. It just requires fine-tuning to your exact specifications and requirements. In my experience it's better to be too conservative with your criteria - at least at first - than not. You might incur some unnecessary costs, but if all goes according to plan you'll recoup that in the revenue you haven't lost due to a poor user experience.

about 2 years ago

Mike Bainbridge

Mike Bainbridge, Chief Digital Technologist at Rackspace

Great feedback.

Thanks for the comments, it really is a "horses for courses" scenario, but each solution does depend on what you are solving for. Rapid scale (while not unusual) is the goal here, and many platforms are not as agile as I would expect them to be.

about 2 years ago

Avatar-blank-50x50

Chris Monkman, Web Developer at E-Dzine

I've often seen it though that the cost of using a cloud long term doesn't guarantee it's cheaper than dedicated hardware over a longer period of time.

Having looked at bandwidth used by our dedicated server vs costs of using something like AWS, right now we'd break even but add a few more clients or have a particular client pick up in visitor numbers then that advantage goes away. The same goes for storage, I got one client who's now got the largest single database on our server yet is one our newest (and the database is being used alot so is increasing at a fair pace). The cost of keeping that customer on AWS would have to passed back to them directly else they wouldn't be affordable to host over the course of a year.

If however you've got a small digital estate to manage or you're passing costs directly onto clients then by all means, it's a quick and easy solution but it's by no means a panacea for all use cases.

about 2 years ago

Avatar-blank-50x50

Deri Jones, CEO at SciVisum Ltd

Chris, that's quite right.
Though this thread is more about auto-scaling than cloud vs dedicated: and of course dedicated can't do auto-scaling!

So the cost-benefits of cloud are also in cases where traffic is very peaky: and that is also where auto-scaling becomes something to consider.

So it's not just about ' small digital estate to manage'

We've load tested very large cloud-based sites run by household name UK companies with large traffic; and they say the cloud finances do stack up.

about 2 years ago

Adam Coleman

Adam Coleman, Load Testing Engineer at SciVisum Ltd

With rapid scaling also comes the issue of caching. A newly integrated cloud instance is - most likely - coming into the pool with a fresh, cold cache. If it then gets swamped by a large number of new users being directed to it by the load balancer you'rew going to see poor performance until the cache warms up.

Pre-warming is always an option if you have the capability to do so but that adds even more delay to getting the new server hooked into the architecture - another disadvantage when looking at a rapid scale situation.

Food for thought, certainly.

about 2 years ago

Avatar-blank-50x50

Mart Wesseling, Marketing at Treestle

Interesting article, but as you said correctly: auto scaling at AWS is not truly 'automatic'. Autoscaling on AWS uses software that determines how to scale based on RAM and CPU consumption of the server. If one of these rises above a certain percentage, the software will automatically scale out an extra server. Setting up the right threshold however, is quite difficult.

Treestle developed an autoscaling solution that's based on page load time, which means end users will always experience a fast website. The solution is already there.
https://www.treestle.com/autoscaler/

I'm looking forward to your feedback.

about 2 years ago

Avatar-blank-50x50

Azaz Qadir, UI Designer at Hikers

Chris you should know that using cloud platforms, like AWS or GCE, is just like renting an apartment. You can live in it and do anything you want, but you will have make monthly payments. You can afford to pay the rents, but you cannot afford to buy your own house and you know that over time what you are paying gets more expensive than owning a house. That's the same story with cloud hosting, you can afford to pay rents, but cannot afford to have your own cloud infrastructure.

Also, auto scaling is not recommended if you do not have technical knowledge or team, like Deri Jones mentioned. If you are not monitoring your traffic trend, then you could either end up wasting resources or having excess of unused resources with auto-scaling. So, if you do not have any technical knowledge, then you can use a managed hosting like Cloudways or immediately hire some technical team.

about 2 years ago

Comment
No-profile-pic
Save or Cancel
Daily_pulse_signup_wide

Enjoying this article?

Get more just like this, delivered to your inbox.

Keep up to date with the latest analysis, inspiration and learning from the Econsultancy blog with our free Digital Pulse newsletter. You will receive a hand-picked digest of the latest and greatest articles, as well as snippets of new market data, best practice guides and trends research.