In the modern world, cloud computing has become second nature to most businesses. This is undeniably a consequence of the digital boom which created a demand for constant online accessibility, guaranteed uptime and a seamless user experience.
Hallmark days and occasions such as Black Friday and Cyber Monday are the perfect examples of situations in which seamless and efficient user experiences not only need to live up to but exceed user demands. This is especially important during the events mentioned above which hold a large cost implication for emergency downtime, or in the event your system completely fails.
In order to achieve such excellent service standards, and deal with variations in online service demands, a lot of businesses have turned to the phenomenon of scaling cloud infrastructure.
The term scaling, in the context of cloud infrastructure, refers to a process of rapidly adjusting or adapting system resources in order to react to changes in system demand. This can either be in a manual or automated manner. System demand variations are typically observed in the form of online traffic (i.e. an increase in users or API requests) or in the quantity of data that requires processing.
There are two broad categorizations of scaling that are used within cloud infrastructures, namely Horizontal and Vertical scaling. Horizontal scaling, also known as scaling out, consists of increasing the quantity of servers available for use in your cloud environment.
Vertical scaling, also known as scaling up, is the process of increasing computational power. Typically, it uses either the processor power (CPU) or memory availability (RAM), of the existing servers in use.
Horizontal scaling is usually much simpler and quicker to implement, however the system software that is being used needs to be able to use a server with more traffic. Vertical scaling on the other hand is usually more expensive, requires some downtime and has an upper ceiling of resource performance determined by the cloud provider.
Choosing the wrong scaling approach could result in an unexpectedly large invoice at the end of the month. Picture a scenario where manual scaling is done in order to react to an online event where increased system usage is experienced, and then the team responsible forgets to reverse the scaling after the event has subsided. This could lead to a disastrous financial situation which could erase the financial uplift created by the online event.
Luckily, there are options available that businesses can choose from when determining the most optimal scaling strategy to use. Most cloud hosting providers allow you to choose the type of scaling that is best suited to your businesses’ needs, be it scheduled scaling when online traffic volumes are easily predictable, reactive scaling when surge events occur or a combination of both. They're usually bundled within an option that is typically referred to as auto scaling.
However, each of these scaling mechanisms have their pros and cons. One of the biggest ones is that scaling comes with a cost consideration because every online compute minute is billed for in the cloud. Which means the finance department typically stares attentively at infrastructure dashboards wishing for resource cool-down periods to be faster after an online surge has passed.
In an attempt to find the perfect blend of cost, service uptime and timely response, a new experimental trend has popped up within the cloud infrastructure society. A continuous desire to understand user behaviour has given rise to a wealth of data, knowledge and metrics which can now be used to model aspects of online service demand.
These data points have given rise to an application of deep learning techniques to infrastructure scaling (deep learning is a sub-set of machine learning, based on an artificial neural network, an approach which allows for continual learning and improvement, in theory mimicking what comes naturally to the human brain). Though the jury is still out on the effectiveness of deep learning techniques being applied to cloud infrastructure scaling. However, such creative and innovative approaches to problem resolution make every day a joy within the technology space.
In order to get started with scaling strategy optimization businesses should trial various scaling mechanisms in small, cost-effective and manageable iterations. You need to ensure that the platform can benefit from the uplift of each scaling mechanism and each scaling step. In addition, you also need to adjust the platform code base wherever applicable to maximise on the resource value gained. In such a way, companies can trial cloud scaling approaches with simulations of demand variation in a closed and controlled environment.
At Ozow we've opted to go the auto-scaling route, but we didn’t land on this option by chance. Through years of research and trial and error, we've found what works for us. More importantly, with one of the biggest hallmarks in retail coming up - Black Friday, we've boosted our auto-scaling capabilities.
We've made our systems agile and responsive, by opting to scale as traffic increases. This is vital especially during periods with unusually high volumes, where the amount of traffic our site gets is unpredictable.
Aside from being a keystone in business practices during high-load events, it can also be an ideal option for everyday use cases. However, this decision can only be made once you've considered all the necessary aspects of what you want your business to achieve.
To learn more about how our infrastructure supports our business endeavors, click here. If you'd like to take advantage of an auto-scaling payments solution, don't hesitate to contact our sales team here.