frostfs-node/cmd/neofs-node/config/object/config.go
Leonard Lyubich 40a4a7faa2 [#674] object/put: Use pseudo worker pool for local operations
After storage engine started to limit number of PUT operations there is no
need to limited worker pool in Object Put service.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2021-10-14 10:20:39 +03:00

41 lines
951 B
Go

package objectconfig
import (
"github.com/nspcc-dev/neofs-node/cmd/neofs-node/config"
)
// PutConfig is a wrapper over "put" config section which provides access
// to object put pipeline configuration of object service.
type PutConfig struct {
cfg *config.Config
}
const (
subsection = "object"
putSubsection = "put"
// PutPoolSizeDefault is a default value of routine pool size to
// process object.Put requests in object service.
PutPoolSizeDefault = 10
)
// Put returns structure that provides access to "put" subsection of
// "object" section.
func Put(c *config.Config) PutConfig {
return PutConfig{
c.Sub(subsection).Sub(putSubsection),
}
}
// PoolSizeRemote returns value of "pool_size_remote" config parameter.
//
// Returns PutPoolSizeDefault if value is not positive number.
func (g PutConfig) PoolSizeRemote() int {
v := config.Int(g.cfg, "pool_size_remote")
if v > 0 {
return int(v)
}
return PutPoolSizeDefault
}