mirror of
https://github.com/ipfs/kubo.git
synced 2025-06-30 18:13:54 +08:00
Merge pull request #4324 from ipfs/feat/default-connmgr
default settings for the connection manager
This commit is contained in:
@ -271,7 +271,10 @@ func (n *IpfsNode) startOnlineServices(ctx context.Context, routingOption Routin
|
||||
|
||||
func constructConnMgr(cfg config.ConnMgr) (ifconnmgr.ConnManager, error) {
|
||||
switch cfg.Type {
|
||||
case "", "none":
|
||||
case "":
|
||||
// 'default' value is the basic connection manager
|
||||
return connmgr.NewConnManager(config.DefaultConnMgrLowWater, config.DefaultConnMgrHighWater, config.DefaultConnMgrGracePeriod), nil
|
||||
case "none":
|
||||
return nil, nil
|
||||
case "basic":
|
||||
grace, err := time.ParseDuration(cfg.GracePeriod)
|
||||
|
@ -5,6 +5,7 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"io"
|
||||
"time"
|
||||
|
||||
peer "gx/ipfs/QmXYjuNuxVzXKJCfWasQk1RqkhVLDM9jtUKhqc2WPQmFSB/go-libp2p-peer"
|
||||
ci "gx/ipfs/QmaPbCnUMBohSGo3KnxEa2bHqyJVVeEEcwtqJAYxerieBo/go-libp2p-crypto"
|
||||
@ -71,11 +72,31 @@ func Init(out io.Writer, nBitsForKeypair int) (*Config, error) {
|
||||
Interval: "12h",
|
||||
Strategy: "all",
|
||||
},
|
||||
Swarm: SwarmConfig{
|
||||
ConnMgr: ConnMgr{
|
||||
LowWater: DefaultConnMgrLowWater,
|
||||
HighWater: DefaultConnMgrHighWater,
|
||||
GracePeriod: DefaultConnMgrGracePeriod.String(),
|
||||
Type: "basic",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
return conf, nil
|
||||
}
|
||||
|
||||
// DefaultConnMgrHighWater is the default value for the connection managers
|
||||
// 'high water' mark
|
||||
const DefaultConnMgrHighWater = 900
|
||||
|
||||
// DefaultConnMgrLowWater is the default value for the connection managers 'low
|
||||
// water' mark
|
||||
const DefaultConnMgrLowWater = 600
|
||||
|
||||
// DefaultConnMgrGracePeriod is the default value for the connection managers
|
||||
// grace period
|
||||
const DefaultConnMgrGracePeriod = time.Second * 20
|
||||
|
||||
// DefaultDatastoreConfig is an internal function exported to aid in testing.
|
||||
func DefaultDatastoreConfig() Datastore {
|
||||
return Datastore{
|
||||
|
Reference in New Issue
Block a user