Posts

Shared Nothing Architecture (SN Architecture) and Sharding database

  SN Architecture : A shared  nothing architecture (SN) is a distributed computing approach in which each node is independent and self-sufficient, and there is no single point of contention required across the system.   This means no resources are shared between nodes (No shared memory, No shared file storage)   The nodes are able to work independently without depending on each other for any work.   Failure on one node affects only the users of that node, however other nodes continue to work without any disruption.   This approach is highly scalable since it  avoid  the existence of single bottleneck in the system. Shared nothing is recently become popular for web development due to its linear scalability. Google has been using it for long time.     In theory, A shared nothing system can scale almost infinitely simply by adding nodes in the form of inexpensive machines.   Sharding:   is  an  architectural approach that distributes a single logical database system into a cluster of mac

Performance optimization and load balancing

  What is Scalability?   Scalability is the ability of a system, network, or process to handle a growing amount of load by adding more resources. The adding of resource can be done in two ways   Scaling Up   This involves adding more resources to the existing nodes. For example, adding more  RAM,  Storage or processing power.   Scaling Out   This involves adding more nodes to support more users.   Any of the approaches can be used for scaling up/out  an  application, however the cost of adding resources (per user) may change as the volume increases. If we add resources to the system  It  should increase the ability of application to take more load in a proportional manner of added resources.     An ideal application should be able to serve high level of load in  less resources . However, in practical, linearly scalable system may be the best option achievable.      Poorly designed applications may have really high cost on scaling up/out since it will require more resources/user as the