Skip to content

Commit e359da7

Browse files
committed
pkg/ratelimit: add SetConfig; pkg/settings/cresettings: remove WorkflowRegistrationQueueLimit
1 parent 11aef92 commit e359da7

File tree

4 files changed

+13
-4
lines changed

4 files changed

+13
-4
lines changed

pkg/ratelimit/ratelimiter.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,3 +67,16 @@ func (rl *RateLimiter) AllowVerbose(sender string) (senderAllow bool, globalAllo
6767

6868
return senderLimiter.Allow(), rl.global.Allow()
6969
}
70+
71+
func (rl *RateLimiter) SetConfig(config RateLimiterConfig) {
72+
rl.mu.Lock()
73+
defer rl.mu.Unlock()
74+
rl.config = config
75+
rl.global.SetLimit(rate.Limit(config.GlobalRPS))
76+
rl.global.SetBurst(config.GlobalBurst)
77+
78+
for _, limiter := range rl.perSender {
79+
limiter.SetLimit(rate.Limit(config.PerSenderRPS))
80+
limiter.SetBurst(config.PerSenderBurst)
81+
}
82+
}

pkg/settings/cresettings/defaults.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
{
22
"WorkflowLimit": "200",
3-
"WorkflowRegistrationQueueLimit": "20",
43
"WorkflowExecutionConcurrencyLimit": "50",
54
"WorkflowTriggerRateLimit": "200rps:200",
65
"GatewayUnauthenticatedRequestRateLimit": "100rps:-1",

pkg/settings/cresettings/defaults.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
WorkflowLimit = '200'
2-
WorkflowRegistrationQueueLimit = '20'
32
WorkflowExecutionConcurrencyLimit = '50'
43
WorkflowTriggerRateLimit = '200rps:200'
54
GatewayUnauthenticatedRequestRateLimit = '100rps:-1'

pkg/settings/cresettings/settings.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ var Config Schema
4545

4646
var Default = Schema{
4747
WorkflowLimit: Int(200),
48-
WorkflowRegistrationQueueLimit: Int(20),
4948
WorkflowExecutionConcurrencyLimit: Int(50),
5049
WorkflowTriggerRateLimit: Rate(200, 200),
5150
GatewayUnauthenticatedRequestRateLimit: Rate(rate.Every(time.Second/100), -1),
@@ -128,7 +127,6 @@ var Default = Schema{
128127

129128
type Schema struct {
130129
WorkflowLimit Setting[int] `unit:"{workflow}"`
131-
WorkflowRegistrationQueueLimit Setting[int] `unit:"{workflow}"`
132130
WorkflowExecutionConcurrencyLimit Setting[int] `unit:"{workflow}"`
133131
WorkflowTriggerRateLimit Setting[config.Rate]
134132
GatewayUnauthenticatedRequestRateLimit Setting[config.Rate]

0 commit comments

Comments
 (0)