System Architecture
Pulsimo is a microservices-based monitoring platform built with Rust and Next.js, designed for high-performance, real-time monitoring of distributed systems.
Design Principles
Microservices Architecture
Independent, scalable services that can be deployed and updated separately
Real-Time First
WebSocket-based live updates for instant visibility into system health
Multi-Tenancy
Organization-level isolation ensures data security and privacy
High Performance
Rust backend provides speed, safety, and minimal resource usage
Developer Experience
Modern UI built with TypeScript, Next.js 15, and React 19
Data Sovereignty
On-premise deployment with complete data control
System Components
Backend Services
🚪 API Gateway
Single entry point for all API requests with authentication and routing
- ✓ JWT authentication and authorization
- ✓ CORS handling
- ✓ API request logging
- ✓ Service auto-detection
⚕️ Checker Service
Executes health checks for all endpoints at configurable intervals
- ✓ Supports HTTP, GraphQL, gRPC, WebSocket, PostgreSQL, MySQL, Redis, Elasticsearch
- ✓ Detects service failures and timeouts
- ✓ Calculates response times
- ✓ Triggers incidents on failures
📧 Notification Service
Sends notifications for incidents and alerts via multiple channels
- ✓ Email (SMTP)
- ✓ Slack, Discord, Microsoft Teams, Google Chat
- ✓ Custom webhooks
- ✓ Repeat interval control
🔗 Dependency Tracker
Tracks and analyzes service dependencies
- ✓ Auto-discover service dependencies
- ✓ Visualize dependency graphs
- ✓ Calculate impact radius
- ✓ Detect single points of failure
Technology Stack
Backend
| Component | Technology | Purpose |
|---|---|---|
| Language | Rust 1.80+ | High performance, memory safety |
Frontend
| Framework | Next.js 15 | React with SSR |
Infrastructure
| Database | PostgreSQL 17 | Primary data store |
| Cache | Redis 7 | Cache and PubSub |