Memory Sizing Calculator
Calculateur de dimensionnement memoire pour applications et services.
Dimensionnement application
Empreinte memoire de base de l'application
20%
Resultats
Par instance
0
MB
Avec marge
0
MB
Total cluster
0
GB
Request K8s
0
Mi
Limit K8s
0
Mi
Kubernetes Resources
resources:
requests:
memory: "256Mi"
limits:
memory: "512Mi"
Presets courants
🌐 Nginx
50MB base, 2MB/worker
~128MB📦 Node.js
256MB base, 4MB/conn
~512MB☕ Java/Spring
512MB heap, overhead JVM
~1GB🐘 PostgreSQL
shared_buffers + connections
~2GB🐬 MySQL
buffer_pool + connections
~2GB🔴 Redis
maxmemory + overhead
~512MB🔍 Elasticsearch
Heap 50% RAM
~4GB📨 Kafka
Heap + page cache
~6GBReference dimensionnement
| Service | Minimum | Recommande | Production | Notes |
|---|---|---|---|---|
| Nginx | 64MB | 128MB | 256MB | worker_connections |
| Node.js | 256MB | 512MB | 1GB | --max-old-space-size |
| Python/Django | 128MB | 256MB | 512MB | Par worker Gunicorn |
| Java/JVM | 512MB | 1GB | 2-4GB | -Xmx + overhead |
| PostgreSQL | 256MB | 1GB | 4-8GB | shared_buffers=25% RAM |
| MySQL | 512MB | 2GB | 8GB+ | innodb_buffer_pool |
| Redis | 64MB | 256MB | 1-4GB | maxmemory |
| MongoDB | 1GB | 4GB | 16GB+ | WiredTiger cache |
| Elasticsearch | 2GB | 4GB | 32GB | Heap max 50% RAM, 32GB max |
Formules de calcul
Memory par instance = Base + (Connexions × Memory/connexion)
Memory avec marge = Memory par instance × (1 + marge%)
Total cluster = Memory avec marge × Nombre d'instances
Bonnes pratiques
- Request = memoire normale d'utilisation
- Limit = memoire maximale acceptable
- Ratio Limit/Request entre 1.2 et 2.0
- Surveillez les OOM kills pour ajuster