Technical note · Architecture
Understanding the services behind ERPNext
A clear introduction to the web, worker, queue, cache, database, scheduler, proxy, and persistent-data responsibilities in an ERPNext stack.
ERPNext is a coordinated service stack
The browser presents ERPNext as one application, but the deployed system depends on several services with different responsibilities. Understanding those boundaries makes installation, monitoring, troubleshooting, backup, and recovery more reliable.
Web application
Frappe handles HTTP application requests, user sessions, permissions, document operations, and server-side business logic. A reverse proxy normally accepts public HTTPS traffic and forwards appropriate requests to the application service.
Database
The relational database stores sites, users, configuration, business documents, and application state. Database backup is essential, but it is not the only persistent information needed for a complete recovery.
Redis services
Redis supports caching, queues, and real-time behavior. Deployments may separate these responsibilities into distinct Redis instances or logical services so workload and failure boundaries are clearer.
Background workers
Workers process queued operations that should not block an interactive web request. Email, long-running reports, imports, integrations, and other background jobs depend on healthy queues and workers.
Scheduler
The scheduler triggers periodic application tasks. A site can appear available in the browser while scheduled work is failing, which is why operational health checks must look beyond the web page.
Socket service
Real-time features use a separate socket service. Reverse-proxy routing and ports must account for this service without exposing unnecessary internal interfaces publicly.
Persistent files
Public and private uploaded files, site configuration, encryption material, and application configuration must be included in the recovery plan alongside the database.
A useful verification order
- Confirm the database and cache/queue services.
- Confirm the web application and background workers.
- Confirm scheduler and real-time services.
- Confirm reverse-proxy routing and HTTPS.
- Confirm site access and a representative application workflow.
- Confirm backup creation and a controlled restoration.
This service-oriented view explains why a successful web response alone is not enough to declare an ERPNext deployment healthy.