Concept Flow - Provider scope (default, request, transient)
Start Application
Resolve Provider
Default Scope: Single Instance
Reuse Same Instance
Request Scope: New Instance Per Request
Create Instance For Each Request
Transient Scope: New Instance Every Injection
Create New Instance Every Time
When NestJS starts, it creates providers based on their scope: default creates one shared instance, request creates a new instance per HTTP request, and transient creates a new instance every time it is injected.