Che cos’è un buon algoritmo di limitazione della frequenza?

|

Potrei usare qualche pseudo-codice, o meglio, Python. Sto cercando di implementare una coda di limitazione della velocità per un bot Python IRC e funziona parzialmente, ma se qualcuno attiva meno messaggi rispetto al limite (ad esempio, il limite di velocità è di 5 messaggi ogni 8 secondi e la persona ne attiva solo 4), e il trigger successivo supera gli 8 secondi (ad es. 16 secondi dopo), il bot invia il messaggio, ma la coda si riempie e il bot attende 8 secondi, anche se non è necessario poiché il periodo di 8 secondi è scaduto.