Career Tracks
Companies
Exams
Opportunities
Pricing
Companies
Microsoft
System Design
10 Essential Components of a Production Web Application
System Design
Medium
api-web-development
10 Essential Components of a Production Web Application
30 mins
Web Architecture
System Design
30 mins
1 sections
Web Architecture, System Design
All System Design Topics
Contents (1 sections)
Contents
Overview
Overview
•
It all starts with CI/CD pipelines that deploy code to the server instances. Tools like Jenkins and GitHub help over here.
•
The user requests originate from the web browser. After DNS resolution, the requests reach the app servers.
•
Load balancers and reverse proxies (such as Nginx & HAProxy) distribute user requests evenly across the web application servers.
•
The requests can also be served by a Content Delivery Network (CDN).
•
The web app communicates with backend services via APIs.
•
The backend services interact with database servers or distributed caches to provide the data.
•
Resource-intensive and long-running tasks are sent to job workers using a job queue.
•
The full-text search service supports the search functionality. Tools like Elasticsearch and Apache Solr can help here.
•
Monitoring tools (such as Sentry, Grafana, and Prometheus) store logs and help analyze data to ensure everything works fine.
•
In case of issues, alerting services notify developers through platforms like Slack for quick resolution.
Overview
•
It all starts with CI/CD pipelines that deploy code to the server instances. Tools like Jenkins and GitHub help over here.
•
The user requests originate from the web browser. After DNS resolution, the requests reach the app servers.
•
Load balancers and reverse proxies (such as Nginx & HAProxy) distribute user requests evenly across the web application servers.
•
The requests can also be served by a Content Delivery Network (CDN).
•
The web app communicates with backend services via APIs.
•
The backend services interact with database servers or distributed caches to provide the data.
•
Resource-intensive and long-running tasks are sent to job workers using a job queue.
•
The full-text search service supports the search functionality. Tools like Elasticsearch and Apache Solr can help here.
•
Monitoring tools (such as Sentry, Grafana, and Prometheus) store logs and help analyze data to ensure everything works fine.
•
In case of issues, alerting services notify developers through platforms like Slack for quick resolution.
10 Essential Components of a Production Web Application [Medium] | Microsoft System_design | TomoLink