Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Client–server model
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Comparison with peer-to-peer architecture== In addition to the client-server model, [[distributed computing]] applications often use the [[peer-to-peer]] (P2P) application architecture. In the client-server model, the server is often designed to operate as a centralized system that serves many clients. The computing power, memory and storage requirements of a server must be scaled appropriately to the expected workload. [[Load balancing (computing)|Load-balancing]] and [[failover]] systems are often employed to scale the server beyond a single physical machine.<ref name="Cardellini Colajanni Yu 1999 pp. 28–39">{{cite journal | last1=Cardellini | first1=V. | last2=Colajanni | first2=M. | last3=Yu | first3=P.S. | title=Dynamic load balancing on Web-server systems | journal=IEEE Internet Computing | publisher=Institute of Electrical and Electronics Engineers (IEEE) | volume=3 | issue=3 | year=1999 | issn=1089-7801 | doi=10.1109/4236.769420 | pages=28–39}}</ref><ref name="NGINX 2014">{{cite web | title=What Is Load Balancing? How Load Balancers Work | website=NGINX | date=June 1, 2014 | url=https://www.nginx.com/resources/glossary/load-balancing/ | access-date=January 21, 2020}}</ref> Load balancing is defined as the methodical and efficient distribution of network or application traffic across multiple servers in a server farm. Each load balancer sits between client devices and backend servers, receiving and then distributing incoming requests to any available server capable of fulfilling them. In a [[peer-to-peer]] network, two or more computers (''peers'') pool their resources and communicate in a [[decentralized system]]. Peers are coequal, or equipotent [[Node (networking)|nodes]] in a non-hierarchical network. Unlike clients in a client-server or [[client-queue-client]] network, peers communicate with each other directly. <ref>{{Cite journal | last1 = Alharbi | first1 = A. | last2 = Aljaedi | first2 = A. | title = Peer-to-Peer Network Security Issues and Analysis: Review | journal = IJCSNS International Journal of Computer Science and Network Security | DOI = 10.1007/978-3-540-45172-3_6 | year = 2004 }}</ref> In peer-to-peer networking, an [[algorithm]] in the peer-to-peer communications protocol balances [[Load (computing)|load]], and even peers with modest resources can help to share the load.<ref>{{Cite journal | last1 = Rao | first1 = A. | last2 = Lakshminarayanan | first2 = K. | last3 = Surana | first3 = S.| last4 = Manning Karp | first4 = R. | title = Load Balancing in Structured P2P Systems | journal = IJCSNS International Journal of Computer Science and Network Security | volume = 20 | pages = 74–88 | year = 2020 }}</ref> If a node becomes unavailable, its shared resources remain available as long as other peers offer it. Ideally, a peer does not need to achieve [[high availability]] because other, [[Redundancy (engineering)|redundant]] peers make up for any resource [[downtime]]; as the availability and load capacity of peers change, the protocol reroutes requests. Both client-server and [[Master/slave (technology)|master-slave]] are regarded as sub-categories of distributed peer-to-peer systems.<ref> {{cite book | last1 = Varma | first1 = Vasudeva | chapter = 1: Software Architecture Primer | title = Software Architecture: A Case Based Approach | chapter-url = https://books.google.com/books?id=jOMYtrJ6r_0C | location = Delhi | publisher = Pearson Education India | date = 2009 | page = 29 | isbn = 9788131707494 | access-date = 2017-07-04 | quote = Distributed Peer-to-Peer Systems [...] This is a generic style of which popular styles are the client-server and master-slave styles. }} </ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)