Creating a good customer experience is all about ensuring the best possible experience through meaningful and personalised customer journeys across your digital channels.
While all customer experience methodologies can be adopted into your strategy to retain customers, a core aspect that most seem to forget is content delivery – ensuring that regardless of the traffic your website receives, users will not experience a delay in load time of any change in the continuity of functioning. We’ve all been there, especially over very busy periods such as Black Friday or the festive season; you open a retail site and it takes forever to load, actions are lagging, and you end up frustrated. How do you stop this from being the reaction to your site? Simple. Scalability!
Why scalability is key
Ensuring scalability on your digital channels guarantees that regardless of the traffic or current demands, your customers are not impacted, their experiences don’t change, and your platform performs optimally.
Leveraging cloud technologies gives you the opportunity to benefit from scalability where you can increase or decrease IT resources as needed to meet changing and current demands. One such cloud provider, Amazon Web Services (AWS), allows you to place resources in an Auto Scaling group where you can use scaling plans to configure a set of instructions for the resources in that group and allow them to grow and shrink as demand requires.
The instructions you can give in your scaling plan can be completely personalised and customised. For example, if you want to ensure your processing or CPU utilisation does not exceed 80%, you can set up a trigger in the Auto Scaling group to provision more resources by spinning up another virtual server to better share the processing load.
The instructions set for your scaling groups will be determined by your scaling strategies. There are three key strategies: optimising for availability, optimising for cost, and a balance between the two.
With an understanding of what scaling is and the role it plays in ensuring a consistent user experience, the question is now around how can you use scaling to you advantage? In a nutshell, there are two types of scaling: dynamic and predictive.
Dynamic scaling entails a sort of reactive approach to demand. When there is a spike in traffic the load balancer is triggered and automatically scales to meet the demand. Essentially, it is used to automatically scale capacity in response to real-time changes in resource utilisation.
A simpler way of looking at this would be to think of dynamic scaling as a thermostat maintaining temperature in your home. You select the desired temperature and the thermostat takes care of the rest.
Predictive scaling on the other hand studies trends and forecasts usage. It makes use of machine learning algorithms to analyse each workload’s historical data and trends. Through this, it then regularly make forecasts on the future load the platform will experience. An easy analogy would be similar to weather forecasts but for this type of scaling let’s you step it up a notch.
Online shopping platforms experience a high amount of traffic during Black Friday due to the crazy deals they host. For online retailers, Black Friday is their busiest day of the year but an anomaly from their normal day-to-day load. Predictive scaling will forecast this and provision enough capacity and resources far from the usual demand to ensure that on this specific day, your site is geared and ready for the influx of customers. Anomalies are not the only time predictive scaling can be used though. It can also be used for day-to-day spikes, such as peak periods where everyone logs onto internal company systems.
But wait there’s more!
You can couple dynamic and predictive scaling together. Using them together allows you to follow the demand curve of your platform more closely and enables you to scale down during periods where demand and load are low, or scale up when traffic is higher than expected. This helps in achieving a balanced strategy in terms of both availability and cost. Cool right?!
Another tool in AWS’s arsenal is Amazon CloudFront, a fast content delivery network (CDN) service that securely delivers data, videos, applications and APIs to customers globally with low latency (delays) and high transfer speeds, all within a developer-friendly environment. Not only does it help achieve better customer experiences but it’s easy to use! CloudFront is capable of scaling automatically, relieving some of the overheads when creating scaling plans and instructions.
As a highly versatile tool, CloudFront can help with many different use cases:
1. Static asset caching
2. Live and on-demand video streaming
Offers multiple options for media streaming (pre-recorded files and live) at the sustained high pace required for 4K delivery to global users.
3. Dynamic content and API acceleration
Can be used to secure and accelerate your API calls. CloudFront supports proxy methods (POST, PUT, OPTIONS, DELETE, and PATCH) which act as an intermediary between requests seeking resources.
4. Software distribution
Automatically scales as globally distributed clients download software updates. You can make your software available right at the edge where your users are, via the CDN as its high data transfer rates speed up the delivery of your binaries. This improves customer experience while lowering your costs.
CloudFront integrates seamlessly with Amazon Shield Standard for Layer 3 / 4 DDoS mitigation. In addition, CloudFront negotiates TLS connections with the highest security ciphers. You can also use advanced features like Field-Level Encryption, to protect the most sensitive data throughout your organisation, so the information can only be viewed by certain components and services in your application stack. CloudFront also integrates with Amazon Identity and Access Management (IAM) to control access. What all this means is that leveraging CloudFront to assist in scaling offers your business extensive additional security – benefitting both you and your customers.
Next time you’re thinking about how to better your users experience, take a step back and look inward. A better experience could be lying within your infrastructure.