- Load Balancer: the load balancer just forwards the requests to the backend machines, which actually "process" the requests, receives the responses from the backend machines and sends them back to the client.
- Caching:
- Cluster: A computer cluster consists of a set of loosely connected or tightly connected computers that work together so that in many respects they can be viewed as a single system.
- Partition:
- Parallelization: means attacking a problem in a way that makes it easy to add more resources for solving it
- Caching:caching is easy, purging the caches when updates are needed is hard.
- Scalable code essentially means you solve problems such that your code is able to produce the desired output if the problem scales to a problem of millions or billions.
- Scale out: add more computers.
Scale up: make each computer more powerful (add more CPUs, memory, storage, worker threads, etc) Map-Reduce operations tend to work best with the scale out approach. Virtualization benefits from scale up, but only to some degree.
Thursday, August 28, 2014
Distributed software
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment