Documentation ¶
Overview ¶
Package best is a strategy that obtains beacon block proposals from multiple nodes and selects the best one based on its attestation load.
Index ¶
- type Parameter
- func WithBeaconBlockProposalProviders(providers map[string]eth2client.BeaconBlockProposalProvider) Parameter
- func WithChainTimeService(chainTime chaintime.Service) Parameter
- func WithClientMonitor(monitor metrics.ClientMonitor) Parameter
- func WithEventsProvider(provider eth2client.EventsProvider) Parameter
- func WithLogLevel(logLevel zerolog.Level) Parameter
- func WithProcessConcurrency(concurrency int64) Parameter
- func WithSignedBeaconBlockProvider(provider eth2client.SignedBeaconBlockProvider) Parameter
- func WithSpecProvider(provider eth2client.SpecProvider) Parameter
- func WithTimeout(timeout time.Duration) Parameter
- type Service
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Parameter ¶
type Parameter interface {
// contains filtered or unexported methods
}
Parameter is the interface for service parameters.
func WithBeaconBlockProposalProviders ¶
func WithBeaconBlockProposalProviders(providers map[string]eth2client.BeaconBlockProposalProvider) Parameter
WithBeaconBlockProposalProviders sets the beacon block proposal providers.
func WithChainTimeService ¶ added in v1.4.0
WithChainTimeService sets the chain time service.
func WithClientMonitor ¶
func WithClientMonitor(monitor metrics.ClientMonitor) Parameter
WithClientMonitor sets the client monitor for the service.
func WithEventsProvider ¶ added in v1.4.0
func WithEventsProvider(provider eth2client.EventsProvider) Parameter
WithEventsProvider sets the events provider.
func WithLogLevel ¶
WithLogLevel sets the log level for the module.
func WithProcessConcurrency ¶
WithProcessConcurrency sets the concurrency for the service.
func WithSignedBeaconBlockProvider ¶ added in v0.9.0
func WithSignedBeaconBlockProvider(provider eth2client.SignedBeaconBlockProvider) Parameter
WithSignedBeaconBlockProvider sets the signed beacon block provider.
func WithSpecProvider ¶ added in v1.4.0
func WithSpecProvider(provider eth2client.SpecProvider) Parameter
WithSpecProvider sets the beacon spec provider.
func WithTimeout ¶
WithTimeout sets the timeout for requests.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service is the provider for beacon block proposals.
func (*Service) BeaconBlockProposal ¶
func (s *Service) BeaconBlockProposal(ctx context.Context, slot phase0.Slot, randaoReveal phase0.BLSSignature, graffiti []byte) (*spec.VersionedBeaconBlock, error)
BeaconBlockProposal provides the best beacon block proposal from a number of beacon nodes.
func (*Service) HandleHeadEvent ¶ added in v1.4.0
HandleHeadEvent handles the "head" events from the beacon node.