- Published on
Client Server
Table of Contents
- Client Server Approach
- Disadvantages of Client Server Approach
- Fixing Throughput
- Fixing Latency
- Peer-to-Peer Approach
- Primary-Secondary Approach
Client Server Approach
- there is the client, which renders the application, and the server that, has the logic within the application
- there is good insulation but also more complexity within these types of approaches
Disadvantages of Client Server Approach
- With the client-server approach, there are performance issues regarding throughput and latency
- throughput means how much data we can get through the network or the server (bits/second)
- latency is the delay per seconds
- how long will the request take to fulfill (send request, process request, send the result back from the server, render result)
- the latency is impacted by factors out of the control of the developer, such as networking connection over long distances and basic networking requirements that vary by clients
Fixing Throughput
- out of order execution can speed up the processing by allowing the server to do the small task while doing the fast tasks out of order
- downside means the execution might cause logic errors
Fixing Latency
- caching allows for not having to process the request because the answer is already there
- might have stale caches causing incorrect data within the server
Peer-to-Peer Approach
- the client is split across many different servers, and all of the peers are connected and communicate with each other
- when one peer disconnects, the rest of the peers can communicate and survive
Primary-Secondary Approach
- the primary part is in charge of the application, which looks over all of the secondary workers
- the primary nodes are in charge of the request and know where the state is, but the worker bees are in charge of the details of the stuff
- Authors
- Name
- Apurva Shah
- Website
- apurvashah.org