开发者

what is the Vertical and Horizontal distribution?

开发者 https://www.devze.com 2023-03-02 14:12 出处:网络
Vertical distribution : Distributed processing is equivalent to organizing a client-serverapplication as a multitiered architecture
  • Vertical distribution : Distributed processing is equivalent to organizing a client-server application as a multitiered architecture . Place 开发者_JS百科logically different components on different machines.
  • Horizontal distribution : Distribution of the clients and servers - more common in modern architecture. A client or server may be physically split up into logically equivalent parts, but each part is operating on its own share of the complete data set, thus balancing the load.

I tried to understand the difference between the vertical and horizontal. what's the meaning of "logically" and "physically" ?...but I can't! Does anybody know?


From the solution manual of Distributed Systems: Principles and Paradigms (Tanenbaum, van Steen):

  • Vertical distribution refers to the distribution of the different layers in a multitiered architecture across multiple machines.
  • Horizontal distribution deals with the distribution of a single layer across multiple machines, such as distributing a single database.

Examples of layers could be:

  • User Interface
  • Application
  • Database


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.


Very Simple -

  • Vertical : buy a high end machine to handle more load
  • Horizontal : buy couple more machines to handle more load

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.


Vertical - Upgrading two computers to handle one task. Adding more processors, ram and many other components of upgrading the computers.

Horizontal. - Purchasing more computers to handle one task. It is more efficient since many computers will work on one task at the same time. It is also very fast compared to Vertical. Most organization systems use this technique.

0

精彩评论

暂无评论...
验证码 换一张
取 消