Prestazioni

Cos'è CPU steal time?

Conosciuto anche come: st time
Definizione

Steal time is the proportion of time a virtual CPU was ready to run but the hypervisor gave the physical core to another guest. It appears as the "st" column in top and vmstat. Sustained values above 2–3% indicate contention and show up as tail-latency spikes rather than as uniformly slow throughput.

Perché CPU steal time è importante

Appare come la colonna "st" in top e vmstat. Valori sostenuti sopra il 2-3% indicano contesa e si manifestano come picchi di latenza in coda piuttosto che come throughput uniformemente lento.

CPU steal time in pratica

Quando gestisci un server, osserva la colonna st in top e vmstat. Se è costantemente sopra il 2-3%, la tua CPU viene condivisa più di quanto il tuo carico di lavoro si aspetti. Il costo non è un rallentamento uniforme: sono picchi di latenza che rovinano i lavori sensibili al tempo. Potresti cambiare dimensione dell'istanza o passare a un host meno affollato. Se lo ignori, inseguirai fantasmi nella tua ottimizzazione mentre il vero collo di bottiglia è sul lato hypervisor.

Errori comuni su CPU steal time

Le persone spesso scambiano il tempo di furto CPU per un segno che i loro processi stiano consumando troppa CPU. Non è così. Il tempo di furto significa che la tua CPU virtuale era pronta ma l'hypervisor ha dato il core fisico a un altro guest. La correzione: guarda la colonna st, non le colonne user o system. Un alto st significa che il problema è fuori dalla tua istanza, non dentro.

CPU steal time — domande frequenti

Perché il tempo di furto CPU è così alto sul mio VPS?

Un alto tempo di furto di solito significa che il tuo hypervisor è sovraccaricato. Altri guest sullo stesso host fisico competono per i core. Non è causato solo dal tuo carico di lavoro. Se st rimane sopra il 2-3%, considera di passare a un provider con meno contesa o un core dedicato.

Posso ridurre io il tempo di furto CPU?

Non direttamente dall'interno della tua istanza. Lo steal time è imposto dall'hypervisor. Puoi ridurre la tua dipendenza dalla CPU ottimizzando il codice, ma lo steal effettivo diminuisce solo se l'host ha meno contesa. A volte migrare verso un host fisico diverso aiuta.

Altro da prestazioni

RTT
L'RTT è il tempo impiegato da un pacchetto per raggiungere una destinazione e per far ritornare la risposta, misurato in millisecondi.
Jitter
Il jitter è la variazione del ritardo dei pacchetti nel tempo, distinto dal ritardo medio in sé.
TTFB
Il TTFB misura il tempo dalla richiesta inviata al primo byte della risposta.