6 Comments
Feb 25Liked by Vivek Bansal

nice blog ,

pls make next post about types of updating progress of data update at client side , by using websockets, webhooks, pooling etc in java & angular .

Expand full comment
author

Sure Atul, I'll try to cover these topics in my upcoming editions :)

Expand full comment

awesome post

Expand full comment
author

Thanks Ashwani for reading!:)

Expand full comment

Hi, How to achieve high availability in case of very high number of client requests? Is autoscaling the answer? Like increasing/decreasing the number of servers based on the number of incoming requests?

Expand full comment
author

Hi Ayush, so High availability refers to a system's ability to operate continuously with minimal or no downtime.

We can try out a few things if our traffic load is increasing:

1. Auto-Scaling: Increase/decrease the number of application servers on demand basis also known as Reactive Scaling.

2. No single point of failure: Run service instance on multiple servers. So that in case of any single server failure, other operational servers can continue to provide availability of the system.

If you have single instance of your database and if it fails, then you service will not work in an expected manner. Thus, replicate your data across multiple instances and install suitable failover mechanism to provide data availability at all times.

3. Build right observability. The sooner you get alert about an issue, the sooner you fix that and thus you decrease the time your service remains unavailable. Without observability, our service would not work and we would have no idea thus degrading service availability.

4. Caching: In case if we're expecting unprecedented amount of traffic increase, we could install a caching layer to serve cached data so that it does not affect the service instance or database health and thus promises more availability from our system. Extrapolating this caching layer, we could use CDNs for serving static content to get more availability from existing resources.

Hope this helps.

Expand full comment