Merge pull request #203 from 9seconds/simplify-time-randomization

Simplify TCP relay time randomization
This commit is contained in:
Sergey Arkhipov
2021-08-30 10:58:47 +03:00
committed by GitHub
+3 -7
View File
@@ -1,7 +1,6 @@
package relay
import (
"math"
"math/rand"
"time"
)
@@ -15,12 +14,9 @@ func getTimeout() time.Duration {
}
func getTime(minDuration, maxDuration time.Duration) time.Duration {
minDurationInSeconds := minDuration.Seconds()
maxDurationInSeconds := maxDuration.Seconds()
middle := minDurationInSeconds + (maxDurationInSeconds-minDurationInSeconds)/2 // nolint: gomnd
number := minDurationInSeconds + rand.ExpFloat64()*middle
number = math.Round(math.Min(maxDurationInSeconds, number))
minDurationInSeconds := int(minDuration.Seconds())
maxDurationInSeconds := int(maxDuration.Seconds())
number := minDurationInSeconds + rand.Intn(maxDurationInSeconds-minDurationInSeconds)
return time.Duration(number) * time.Second
}