Monday, November 19, 2012

Scalability : A Case for Cloud Computing

Scalability is the ability of a system, network, or process, to handle a growing amount of work in a capable manner or its ability to be enlarged to accommodate that growth. It impacts performance and efficiency of your system.

Scalability can also impact business if you're cloud application can't handle users beyond a certain threshold.  Moreover, reducing the latency between your customers and business can improve user experience, thus; encourage repeat usage/visitors.

Hardware resources which can impact your ability to scale include:
  • CPU
  • Memory 
  • Disk (capacity & throughput)
  • Network Bandwidth
Node: Physical server, virtual machine, or cluster of servers
Data Node: Contains data used by application
Compute Node: Contains application code logic

There are 2 approaches to scaling:
  1. Vertical Scaling (Scaling Up) : increase overall application capacity by increasing resources in existing node
  1. Horizontal Scaling (Scaling Out) : increase overall application capacity by adding new nodes
Vertical Scaling is often less complex, as you're throwing more hardware at the problem.
Horizontal Scaling is more complex, and architecture focused.


For more detailed account of Scalability...I suggest you look at Cloud Architecture Patterns Develop cloud-native applications by Bill Wilder




1 comment:

  1. Cloud Computing has various flavors, each purposely aimed at aligning with the varying business modules prevalent today. Managed Cloud Hosting is ideal for businesses that give precedence to factors like impregnable security and high availability instead of costs being incurred.

    ReplyDelete

Popular Posts