Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewServiceClient ¶
func NewServiceClient(config schedulerconfig.PriorityMultiplierConfig) (priorityoverride.PriorityMultiplierServiceClient, error)
Types ¶
type Provider ¶
Provider provides per-pool-per-queue priority multipliers These can be used to increase the priority of a given queue over its base level
func NewNoOpProvider ¶
func NewNoOpProvider() Provider
func NewStaticProvider ¶
type ServiceProvider ¶
type ServiceProvider struct {
// contains filtered or unexported fields
}
ServiceProvider is an implementation of Provider that fetches priority multipliers from the Priority Multiplier Service. We cache the multipliers in memory so that we can continue scheduling even if the API is unavailable
func NewServiceProvider ¶
func NewServiceProvider(apiClient priorityoverride.PriorityMultiplierServiceClient, updateFrequency time.Duration) *ServiceProvider
func (*ServiceProvider) Multiplier ¶
func (p *ServiceProvider) Multiplier(pool, queue string) (float64, error)
func (*ServiceProvider) Ready ¶
func (p *ServiceProvider) Ready() bool
func (*ServiceProvider) Run ¶
func (p *ServiceProvider) Run(ctx *armadacontext.Context) error
type StaticProvider ¶
type StaticProvider struct {
// contains filtered or unexported fields
}
StaticProvider is Provider that loads priority overrides from a static map
func (*StaticProvider) Multiplier ¶
func (s *StaticProvider) Multiplier(pool, queue string) (float64, error)
func (*StaticProvider) Ready ¶
func (s *StaticProvider) Ready() bool
Click to show internal directories.
Click to hide internal directories.