I am designing a public AI-powered chatbot widget for a website and looking to establish a low-cost, scalable deployment architecture.
The chatbot architecture consists of two main components:
1. **Frontend:** A lightweight JavaScript client/widget embedded on a static page.
2. **Backend/Orchestrator:** An API server (Python/FastAPI or Node.js) handling webhooks, session context, and external AI/Payment integrations.
### Current Requirements & Constraints:
* **Cost:** Minimizing idle infrastructure costs (low or free-tier hosting for early testing).
* **Concurrency:** Handling stateless REST or WebSocket connections for multi-tenant web visitors without dedicated high-RAM VPS specs.
* **Public Access:** CORS configuration and public availability behind an HTTPS endpoint.
### Question:
From an infrastructure and backend engineering standpoint, what is the standard architecture for deploying this type of lightweight webhook orchestrator?
Specifically:
- Is a **Serverless/FaaS architecture** (e.g., AWS Lambda, Vercel Serverless Functions) preferable over a **containerized lightweight service** (e.g., Docker on Railway/Render/Fly.io) for handling real-time chat webhooks without incurring high cold-start latency or execution costs?
- What are the recommended caching/session management practices at the edge to keep backend compute minimal during active chat sessions?
Any code samples, infrastructure-as-code patterns, or technical tradeoffs regarding memory footprint and execution timeout would be greatly appreciated.