mirror of
https://github.com/oarkflow/mq.git
synced 2025-10-05 07:57:00 +08:00
feat: sig
This commit is contained in:
26
options.go
26
options.go
@@ -130,6 +130,8 @@ func defaultOptions() *Options {
|
||||
maxMemoryLoad: 5000000,
|
||||
storage: NewMemoryTaskStorage(10 * time.Minute),
|
||||
logger: logger.NewDefaultLogger(),
|
||||
BrokerRateLimiter: NewRateLimiter(10, 5),
|
||||
ConsumerRateLimiter: NewRateLimiter(10, 5),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -254,3 +256,27 @@ func WithJitterPercent(val float64) Option {
|
||||
opts.jitterPercent = val
|
||||
}
|
||||
}
|
||||
|
||||
func WithBrokerRateLimiter(rate int, burst int) Option {
|
||||
return func(opts *Options) {
|
||||
opts.BrokerRateLimiter = NewRateLimiter(rate, burst)
|
||||
}
|
||||
}
|
||||
|
||||
func WithConsumerRateLimiter(rate int, burst int) Option {
|
||||
return func(opts *Options) {
|
||||
opts.ConsumerRateLimiter = NewRateLimiter(rate, burst)
|
||||
}
|
||||
}
|
||||
|
||||
func DisableBrokerRateLimit() Option {
|
||||
return func(opts *Options) {
|
||||
opts.BrokerRateLimiter = nil
|
||||
}
|
||||
}
|
||||
|
||||
func DisableConsumerRateLimit() Option {
|
||||
return func(opts *Options) {
|
||||
opts.ConsumerRateLimiter = nil
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user