- Vertical distribution :
Distributed processing is equivalent to organizing a
client-server application
as amultitiered architecture
. Place logically different components on different machines . - Horizontal distribution :
Distribution of the
clients and servers
- more common in modern architecture . Aclient
orserver
may bephysically
split up intologically
equivalent parts, but each part is operating on its own share of the complete data set, thus balancing the load .
i tried to understand what the different between the vertical
and horizontal
? what's the meaning of "logically
" and "physically
" ?...but i can't !! anybody know .. ??
Very Simple -
You with high probability would start with vertical since its simple to get started. Once load on your system reaches a threshold you would land on horizontal to make your architecture more scalable.
From the solution manual of Distributed Systems: Principles and Paradigms (Tanenbaum, van Steen):
Examples of layers could be:
AFAIK
horizontal - You add more machines. These machines are equal meaning that they play similar role. For example you have Node server that handles all requests. You install it on three machines. All these machines do the same thing. When the load is high you add another machine with Node server.
vertical - You get better machines to handle the load. Also machines play different roles - for example you have Authentication server on one machine and Node server on the other.