Auto-Scaling in the cloud-Everything the product manager needs to know

Auto-Scaling in the cloud-Everything the product manager needs to know

auto-scaling in the cloud

 

It’s a new issue reported by customers which says the cloud is not processing messages from devices fast enough… The product manager takes stock of the resources and raises a request for scaling up the infra… Sounds familiar?

While the request goes through its approval workflow, a seasoned technical architect walks through the code along with the developers, only to find a small piece of code that should have been multi-threaded instead of sequential processing. Quickly after the issue is identified the development team completes the code change, a new configuration setting is added for the number of threads needed and the processing speed jumps up ten-fold, with no extra resource!

The point to take home? Scalability is not only about adding more expensive resources to physical infra or the cloud. Neither is it a quick fix to be thought about just in time when the demand increases. Here are a few points to ponder upon about scalability, especially if you are a product manager

  1. How will this work when we get 10x/100x more traffic/visitors/devices? This is the right question to ask during design discussions of the product.
  2. Scalable components will be a by-product of the initial design that follows high-cohesion-loose-coupling principles.
  3. If you have to scale up the entire app for the congestion in one component, it’s a signal that the product design is not-so-good. You should be able to scale up only the required components of a product.
  4.  Scalability doesn’t always require more compute power, sometimes running multiple container instances also does the trick.
  5. Your storage may still be a bottleneck if you increase the service instances. You need not replicate the storage, but take a look at the connection pool size.

Which incident came to your mind after reading this post?

Share this post