Client–server model: Difference between revisions

Content deleted Content added
Removing link(s) to "SQL Server Pro": Removing links to deleted page SQL Server Pro.
 
(6 intermediate revisions by 4 users not shown)
Line 32:
 
=== General concepts ===
"Server-side software" refers to a [[computer application]], such as a [[web server]], that runs on remote [[server (computing)#Hardware|server hardware]], reachable from a [[user (computing)|user]]'s local [[computer]], [[smartphone]], or other device.<ref>{{cite web |url=https://www.cloudflare.com/en-gb/learning/serverless/glossary/client-side-vs-server-side/ |title=What do client side and server side mean? Client side vs. server side |publisher=Cloudflare |access-date=17 April 2025 |url-status=live}}</ref> Operations may be performed server-side because they require access to information or functionality that is not available on the [[client (computing)|client]], or because performing such operations on the [[client-side|client side]] would be slow, unreliable, or [[computer security|insecure]].
 
Client and server programs may be commonly available ones such as free or commercial [[web server]]s and [[web browser]]s, communicating with each other using standardized [[protocol (computing)|protocols]]. Or, [[programmer]]s may write their own server, client, and [[communications protocol]] which can only be used with one another.
Line 90:
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 | DOIdoi = 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>
Line 138:
[[Category:Inter-process communication]]
[[Category:Network architecture]]
[[Category:Distributed computing architecture]]