mirror of
https://github.com/ipfs/kubo.git
synced 2025-07-01 10:49:24 +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) {
|
func constructConnMgr(cfg config.ConnMgr) (ifconnmgr.ConnManager, error) {
|
||||||
switch cfg.Type {
|
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
|
return nil, nil
|
||||||
case "basic":
|
case "basic":
|
||||||
grace, err := time.ParseDuration(cfg.GracePeriod)
|
grace, err := time.ParseDuration(cfg.GracePeriod)
|
||||||
|
@ -5,6 +5,7 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
|
"time"
|
||||||
|
|
||||||
peer "gx/ipfs/QmXYjuNuxVzXKJCfWasQk1RqkhVLDM9jtUKhqc2WPQmFSB/go-libp2p-peer"
|
peer "gx/ipfs/QmXYjuNuxVzXKJCfWasQk1RqkhVLDM9jtUKhqc2WPQmFSB/go-libp2p-peer"
|
||||||
ci "gx/ipfs/QmaPbCnUMBohSGo3KnxEa2bHqyJVVeEEcwtqJAYxerieBo/go-libp2p-crypto"
|
ci "gx/ipfs/QmaPbCnUMBohSGo3KnxEa2bHqyJVVeEEcwtqJAYxerieBo/go-libp2p-crypto"
|
||||||
@ -71,11 +72,31 @@ func Init(out io.Writer, nBitsForKeypair int) (*Config, error) {
|
|||||||
Interval: "12h",
|
Interval: "12h",
|
||||||
Strategy: "all",
|
Strategy: "all",
|
||||||
},
|
},
|
||||||
|
Swarm: SwarmConfig{
|
||||||
|
ConnMgr: ConnMgr{
|
||||||
|
LowWater: DefaultConnMgrLowWater,
|
||||||
|
HighWater: DefaultConnMgrHighWater,
|
||||||
|
GracePeriod: DefaultConnMgrGracePeriod.String(),
|
||||||
|
Type: "basic",
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
return conf, nil
|
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.
|
// DefaultDatastoreConfig is an internal function exported to aid in testing.
|
||||||
func DefaultDatastoreConfig() Datastore {
|
func DefaultDatastoreConfig() Datastore {
|
||||||
return Datastore{
|
return Datastore{
|
||||||
|
Reference in New Issue
Block a user