Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Cardano.PeerSelection.Churn
Description
This subsystem manages the discovery and selection of upstream peers.
Synopsis
- peerChurnGovernor :: forall m extraState extraFlags extraCounters extraPeers peeraddr. (MonadDelay m, Alternative (STM m), MonadTimer m, MonadCatch m) => PeerChurnArgs m (ExtraArguments m) extraState extraFlags extraPeers (LedgerPeersConsensusInterface m) extraCounters peeraddr -> m Void
Documentation
peerChurnGovernor :: forall m extraState extraFlags extraCounters extraPeers peeraddr. (MonadDelay m, Alternative (STM m), MonadTimer m, MonadCatch m) => PeerChurnArgs m (ExtraArguments m) extraState extraFlags extraPeers (LedgerPeersConsensusInterface m) extraCounters peeraddr -> m Void Source #
Churn governor.
At every churn interval decrease active peers for a short while (1s), so that we can pick new ones. Then we churn non-active peers.
On startup the churn governor gives a head start to local root peers over root peers.