Sep 3, 2020
Part 2: Efficiency
Written by Nathan Johnston, Chief Technology Officer
Cloud computing offers many advantages over traditional on-prem solutions. In this article, I will explore ways in which you can get maximum performance efficiency out of your cloud workloads.
Performance Efficiency is the ability of your cloud infrastructure to react to changes in the workload and adjust accordingly to deliver the best performance efficiently. You can achieve this by scaling your resources appropriately and utilizing services that allow for automatic scaling; such as many Platform as a Service (PaaS) offerings. These PaaS services serve many functions, including database, message bus, compute resources, and others.
Take the time to Investigate your options and adjust your application design for scalability. In most cases, optimal efficiency and scale can only be achieved by building these concepts into the application itself. Partitioning workloads, stateless methods, and a knowledge how the individual components of your cloud infrastructure scale will allow you to take advantage of the scheduled and reactive auto-scaling features that all cloud providers offer. A properly stateless partitioned workload can rapidly scale out across many instances of the service and achieve high scalability while retaining the ability to scale down when the additional resources are no longer needed.
Match your workload to the appropriate technology and scale. In the cloud, you have many options to choose from with regards to features, performance, and scaling capabilities. It is essential to select the correct technology based on the measurable goals of your project. Consider the average user load, the load at peak usage, and any nightly or background activity that your application performs. These attributes, as well as others, will help you select the services with the right amount of performance, scalability, and usability to support your application’s needs.
Pay attention to the scalability and performance limits of the services you are using. In many cases, free or basic plans will serve you well when you are doing development, but when it comes time for performance testing or production workloads, you may run into trouble if you do not understand these limits. Often, the solution is as simple as changing the pricing tier of services. Still, in other cases, you may need to make sure you have correctly partitioned the workload to allow for efficient scaling.
In many cases, it is easy to move a workload to the cloud; but doing so in a manner that offers optimal performance efficiency requires work and knowledge to do the job right. Do the research needed to make good choices and design your application for the cloud environment. Doing so will allow you to achieve more in the cloud than would be practical on-prem.