Changeset 398 in code for trunk/user.go


Ignore:
Timestamp:
Aug 19, 2020, 5:42:33 PM (5 years ago)
Author:
contact
Message:

Implement rate limiting for upstream messages

Allow up to 10 outgoing messages in a burst, then throttle to 1 message
each 2 seconds.

Closes: https://todo.sr.ht/~emersion/soju/87

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/user.go

    r395 r398  
    121121                }
    122122
    123                 if dur := time.Now().Sub(lastTry); dur < retryConnectMinDelay {
    124                         delay := retryConnectMinDelay - dur
     123                if dur := time.Now().Sub(lastTry); dur < retryConnectDelay {
     124                        delay := retryConnectDelay - dur
    125125                        net.user.srv.Logger.Printf("waiting %v before trying to reconnect to %q", delay.Truncate(time.Second), net.Addr)
    126126                        time.Sleep(delay)
Note: See TracChangeset for help on using the changeset viewer.