
Testa il carico delle tue app, in Python
Uno strumento di test delle prestazioni basato su Locust, installato e mantenuto da DINAO. Scrivi i tuoi scenari in Python, simula centinaia di migliaia di utenti e monitora tutto in tempo reale — su un'infrastruttura francese che controlli.
Cos'è Locust ?
Locust è uno strumento open-source per test di carico e delle prestazioni in cui gli scenari sono definiti direttamente in Python : si ereditano classi come HttpUser o FastHttpUser e si decorano le azioni con @task, invece di manipolare un'interfaccia pesante o XML. La sua architettura event-based basata su gevent esegue ogni utente virtuale nella propria coroutine leggera, consentendo di simularne decine di migliaia per processo.
Locust offre un'interfaccia web in tempo reale (throughput, tempo di risposta, tasso di errori, grafici) con regolazione del carico in corso d'opera, nonché una modalità headless ideale per i pipeline CI/CD. Sebbene orientato all'HTTP, può testare praticamente qualsiasi protocollo tramite client personalizzati e la sua architettura pluggable accoglie estensioni (Grafana/Prometheus, profili di carico).
Progettato per lo scaling, funziona in modalità master/worker distribuita : il master ospita l'interfaccia e guida la campagna, i worker generano il carico (un worker per core CPU). È utilizzato da Google, Microsoft, Mozilla o EA, rimane completamente stateless e si auto-ospita naturalmente in contenitori Docker.
Alloggia Locust su DINAO
Livelli di risorse compatibili con i requisiti di Locust (1 vCPU / 512 Mo / 1 Go minimo). Ospitato in Francia, fully managed.
- 1 vCPU dedicati
- 2 Go di RAM
- 20 Go NVMe
- Backup quotidiani
- Fully managed & supervisionato da DINAO
- 2 vCPU dedicati
- 4 Go di RAM
- 40 Go NVMe
- Backup quotidiani
- Fully managed & supervisionato da DINAO
- 4 vCPU dedicati
- 8 Go di RAM
- 80 Go NVMe
- Backup quotidiani
- Fully managed & supervisionato da DINAO
- 8 vCPU dedicati
- 16 Go di RAM
- 160 Go NVMe
- Backup quotidiani
- Fully managed & supervisionato da DINAO
Dettagli tecnici
Ti chiedi…
Devo conoscere Python per scrivere i miei test?
Sì, gli scenari Locust sono codice Python — è il suo punto di forza : sono versionabili in Git e possono contenere logica di business complessa. DINAO può accompagnarti nell'implementazione.
Quanti utenti virtuali posso simulare?
Da qualche migliaio su un worker a centinaia di migliaia in modalità distribuita. La regola: un worker per core CPU, e si aggiungono worker per scalare. FastHttpUser consente throughput molto elevati.
I miei URL e i dati di test vanno a un servizio di terze parti?
No. A differenza dei SaaS di test, tutto viene eseguito sulla tua istanza DINAO in Francia. Locust è stateless: nessun dato viene conservato dopo la campagna.
Posso integrarlo nella mia CI/CD?
Sì. La modalità headless avvia i test senza interfaccia e restituisce un codice di uscita: perfetto per Jenkins, GitLab CI o GitHub Actions, con esportazione CSV dei risultati.
Posso visualizzare i risultati in Grafana?
Sì. Tramite estensioni community, Locust espone le sue metriche verso Prometheus/Grafana, oltre alla sua interfaccia web in tempo reale e all'esportazione CSV.