Bird
Raised Fist0
HLDsystem_design~20 mins

Reverse proxy concept in HLD - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
๐ŸŽ–๏ธ
Reverse Proxy Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
๐Ÿง  Conceptual
intermediate
2:00remaining
Role of a Reverse Proxy in Web Architecture

Which of the following best describes the primary role of a reverse proxy in a web system?

AIt directly serves static files without contacting backend servers.
BIt forwards client requests to backend servers and can provide load balancing and caching.
CIt acts as a client to fetch data from the internet on behalf of the server.
DIt stores user credentials and manages authentication tokens.
Attempts:
2 left
๐Ÿ’ก Hint

Think about what a reverse proxy does between clients and servers.

โ“ Architecture
intermediate
2:00remaining
Reverse Proxy Placement in System Architecture

Where is a reverse proxy typically placed in a web application architecture?

ADirectly inside the backend database to optimize queries.
BBetween the backend servers and the database to manage data flow.
COn the client device to cache server responses locally.
DBetween the client and the backend servers, acting as an intermediary.
Attempts:
2 left
๐Ÿ’ก Hint

Consider the flow of requests from users to servers.

โ“ scaling
advanced
2:30remaining
Scaling Backend Servers with Reverse Proxy

How does a reverse proxy help scale backend servers in a high-traffic web application?

ABy distributing incoming requests evenly across multiple backend servers to prevent overload.
BBy storing all user sessions locally to reduce backend load.
CBy encrypting all data between backend servers and clients to improve security.
DBy replacing backend servers with a single powerful server to handle all requests.
Attempts:
2 left
๐Ÿ’ก Hint

Think about how load balancing works in web systems.

โ“ tradeoff
advanced
2:30remaining
Tradeoffs of Using a Reverse Proxy

Which is a common tradeoff when introducing a reverse proxy into a system?

ADirectly exposes backend servers to the internet, increasing risk.
BEliminates the need for backend servers, reducing complexity.
CAdds an extra network hop which can increase latency but improves security and scalability.
DRemoves all caching capabilities from the system, reducing performance.
Attempts:
2 left
๐Ÿ’ก Hint

Consider both benefits and costs of adding components in a network path.

โ“ estimation
expert
3:00remaining
Estimating Reverse Proxy Capacity for Traffic Load

A reverse proxy handles 10,000 requests per second. Each request averages 500KB response size. What is the approximate outgoing bandwidth needed for the reverse proxy?

AAbout 50 Gbps
BAbout 5 Gbps
CAbout 500 Mbps
DAbout 50 Mbps
Attempts:
2 left
๐Ÿ’ก Hint

Calculate bandwidth = requests per second ร— response size in bits.

Practice

(1/5)
1. What is the primary role of a reverse proxy in a web system?
easy
A. It stores data permanently like a database.
B. It receives client requests and forwards them to backend servers.
C. It acts as a client to send requests to other servers.
D. It directly serves static files without contacting servers.

Solution

  1. Step 1: Understand the role of reverse proxy

    A reverse proxy acts as an intermediary between clients and backend servers, receiving requests from clients.
  2. Step 2: Identify what it does with requests

    It forwards these requests to the appropriate backend servers for processing, then returns the response to the client.
  3. Final Answer:

    It receives client requests and forwards them to backend servers. -> Option B
  4. Quick Check:

    Reverse proxy role = Forward requests [OK]
Hint: Reverse proxy forwards client requests to servers [OK]
Common Mistakes:
  • Confusing reverse proxy with database
  • Thinking reverse proxy acts as a client
  • Assuming it serves files directly without servers
2. Which of the following is a correct function of a reverse proxy?
easy
A. Load balancing incoming client requests across servers.
B. Storing user session data permanently.
C. Generating dynamic web pages on the server.
D. Directly connecting clients to databases.

Solution

  1. Step 1: Identify reverse proxy functions

    Reverse proxies distribute incoming client requests to multiple backend servers to balance load and improve performance.
  2. Step 2: Eliminate incorrect options

    Storing session data, generating pages, or direct DB connections are not reverse proxy tasks.
  3. Final Answer:

    Load balancing incoming client requests across servers. -> Option A
  4. Quick Check:

    Reverse proxy function = Load balancing [OK]
Hint: Reverse proxy balances load, not stores data [OK]
Common Mistakes:
  • Confusing reverse proxy with application server
  • Thinking it stores session data
  • Assuming it generates web pages
3. Consider a system where a reverse proxy receives 1000 requests per second and forwards them evenly to 4 backend servers. How many requests per second does each backend server receive?
medium
A. 4 requests per second
B. 4000 requests per second
C. 250 requests per second
D. 1000 requests per second

Solution

  1. Step 1: Understand load distribution

    The reverse proxy evenly splits 1000 requests among 4 servers, so each gets an equal share.
  2. Step 2: Calculate requests per server

    1000 requests รท 4 servers = 250 requests per server per second.
  3. Final Answer:

    250 requests per second -> Option C
  4. Quick Check:

    1000 รท 4 = 250 [OK]
Hint: Divide total requests by number of servers [OK]
Common Mistakes:
  • Multiplying instead of dividing
  • Confusing total with per server requests
  • Ignoring even distribution
4. A reverse proxy is configured to cache responses but clients report stale data. What is the most likely cause?
medium
A. The cache expiration time is set too long.
B. The reverse proxy is not forwarding requests.
C. Backend servers are down.
D. Clients are bypassing the reverse proxy.

Solution

  1. Step 1: Analyze caching behavior

    If clients get stale data, it means cached responses are not refreshed frequently enough.
  2. Step 2: Identify cause of stale cache

    Setting cache expiration too long causes the reverse proxy to serve old data instead of fresh responses.
  3. Final Answer:

    The cache expiration time is set too long. -> Option A
  4. Quick Check:

    Long cache time = stale data [OK]
Hint: Check cache expiration for stale data issues [OK]
Common Mistakes:
  • Assuming backend servers are down without checking
  • Thinking reverse proxy stops forwarding requests
  • Ignoring cache settings
5. You want to design a scalable web system using a reverse proxy that handles SSL termination, load balancing, and caching. Which of the following is the best architectural choice?
hard
A. Place the reverse proxy behind backend servers to handle load balancing.
B. Let each backend server handle SSL and caching individually without a reverse proxy.
C. Use a reverse proxy only for caching, and let clients connect directly to backend servers for SSL.
D. Use a reverse proxy in front of multiple backend servers, configure SSL termination and caching on it.

Solution

  1. Step 1: Understand reverse proxy capabilities

    A reverse proxy can handle SSL termination, load balancing, and caching centrally, simplifying backend servers.
  2. Step 2: Evaluate architectural options

    Placing the reverse proxy in front of backend servers allows it to manage SSL and cache efficiently, improving scalability and security.
  3. Final Answer:

    Use a reverse proxy in front of multiple backend servers, configure SSL termination and caching on it. -> Option D
  4. Quick Check:

    Reverse proxy front = SSL, load balance, cache [OK]
Hint: Put reverse proxy in front for SSL and load balance [OK]
Common Mistakes:
  • Letting backend servers handle SSL separately
  • Placing reverse proxy behind servers
  • Splitting SSL and caching between clients and servers
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard