Documentation
¶
Index ¶
- func ApplyOptimizations(config *OptimizationConfig) error
- func GetRuntimeStats() map[string]interface{}
- func TuneForTelcoWorkloads() error
- type Alert
- type HealthStatus
- type LatencyLimits
- type MetricSource
- type MetricsCache
- type MetricsCollector
- type MetricsData
- type NetworkLimits
- type OptimizationConfig
- type OptimizationEngine
- func (oe *OptimizationEngine) AddOptimizationProfile(profile *OptimizationProfile)
- func (oe *OptimizationEngine) AddOptimizationRule(rule OptimizationRule)
- func (oe *OptimizationEngine) GetOptimizationProfile(name string) (*OptimizationProfile, error)
- func (oe *OptimizationEngine) GetRecommendations(ctx context.Context, resourceName string) ([]*OptimizationRecommendation, error)
- func (oe *OptimizationEngine) OptimizeResource(ctx context.Context, resourceName string, target *OptimizationTarget) (*OptimizationResult, error)
- func (oe *OptimizationEngine) ScheduleOptimization(task OptimizationTask) error
- func (oe *OptimizationEngine) Start(ctx context.Context) error
- func (oe *OptimizationEngine) Stop() error
- type OptimizationObjective
- type OptimizationProfile
- type OptimizationRecommendation
- type OptimizationResult
- type OptimizationRule
- type OptimizationScheduler
- type OptimizationStrategy
- type OptimizationTarget
- type OptimizationTask
- type PerformanceMetrics
- type PerformanceMonitor
- type ResourceChange
- type ResourceConstraint
- type ResourceConstraints
- type ResourceOptimizer
- type ResourceRange
- type ResourceState
- type ResourceUsage
- type TaskExecution
- type TaskExecutor
- type TaskWorker
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApplyOptimizations ¶
func ApplyOptimizations(config *OptimizationConfig) error
ApplyOptimizations applies optimization configuration to the runtime.
func GetRuntimeStats ¶
func GetRuntimeStats() map[string]interface{}
GetRuntimeStats returns current runtime statistics.
func TuneForTelcoWorkloads ¶
func TuneForTelcoWorkloads() error
TuneForTelcoWorkloads applies telco-specific optimizations.
Types ¶
type HealthStatus ¶
type LatencyLimits ¶
type MetricSource ¶
type MetricsCache ¶
type MetricsCache struct {
// contains filtered or unexported fields
}
func NewMetricsCache ¶
func NewMetricsCache(ttl time.Duration) *MetricsCache
func (*MetricsCache) Get ¶
func (mc *MetricsCache) Get(key string) (*MetricsData, error)
func (*MetricsCache) Set ¶
func (mc *MetricsCache) Set(key string, data *MetricsData)
type MetricsCollector ¶
type MetricsCollector struct {
// contains filtered or unexported fields
}
func NewMetricsCollector ¶
func NewMetricsCollector() *MetricsCollector
func (*MetricsCollector) AddMetricSource ¶
func (mc *MetricsCollector) AddMetricSource(source MetricSource)
func (*MetricsCollector) GetLatestMetrics ¶
func (mc *MetricsCollector) GetLatestMetrics(resourceName string) (*MetricsData, error)
func (*MetricsCollector) Stop ¶
func (mc *MetricsCollector) Stop() error
type MetricsData ¶
type NetworkLimits ¶
type NetworkLimits struct {
Bandwidth ResourceRange `json:"bandwidth"`
Latency ResourceRange `json:"latency"`
PacketLoss ResourceRange `json:"packet_loss"`
Jitter ResourceRange `json:"jitter"`
}
type OptimizationConfig ¶
type OptimizationConfig struct {
MaxProcs int `json:"max_procs"`
AutoTuneMaxProcs bool `json:"auto_tune_max_procs"`
SwissTablesEnabled bool `json:"swiss_tables_enabled"`
GCPercent int `json:"gc_percent"`
PGOEnabled bool `json:"pgo_enabled"`
}
OptimizationConfig holds configuration for runtime optimization settings.
func DefaultOptimizationConfig ¶
func DefaultOptimizationConfig() *OptimizationConfig
DefaultOptimizationConfig returns a default optimization configuration.
type OptimizationEngine ¶
type OptimizationEngine struct {
// contains filtered or unexported fields
}
func NewOptimizationEngine ¶
func NewOptimizationEngine(client client.Client) *OptimizationEngine
func (*OptimizationEngine) AddOptimizationProfile ¶
func (oe *OptimizationEngine) AddOptimizationProfile(profile *OptimizationProfile)
func (*OptimizationEngine) AddOptimizationRule ¶
func (oe *OptimizationEngine) AddOptimizationRule(rule OptimizationRule)
func (*OptimizationEngine) GetOptimizationProfile ¶
func (oe *OptimizationEngine) GetOptimizationProfile(name string) (*OptimizationProfile, error)
func (*OptimizationEngine) GetRecommendations ¶
func (oe *OptimizationEngine) GetRecommendations(ctx context.Context, resourceName string) ([]*OptimizationRecommendation, error)
func (*OptimizationEngine) OptimizeResource ¶
func (oe *OptimizationEngine) OptimizeResource(ctx context.Context, resourceName string, target *OptimizationTarget) (*OptimizationResult, error)
func (*OptimizationEngine) ScheduleOptimization ¶
func (oe *OptimizationEngine) ScheduleOptimization(task OptimizationTask) error
func (*OptimizationEngine) Stop ¶
func (oe *OptimizationEngine) Stop() error
type OptimizationObjective ¶
type OptimizationObjective interface {
Calculate(state *ResourceState) float64
GetObjectiveName() string
GetWeight() float64
IsMaximization() bool
}
type OptimizationProfile ¶
type OptimizationProfile struct {
Name string `json:"name"`
Type string `json:"type"`
Priority int `json:"priority"`
Constraints ResourceConstraints `json:"constraints"`
Objectives []string `json:"objectives"`
Parameters map[string]interface{} `json:"parameters"`
Enabled bool `json:"enabled"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
func CreateCPUOptimizationProfile ¶
func CreateCPUOptimizationProfile() *OptimizationProfile
func CreateLatencyOptimizationProfile ¶
func CreateLatencyOptimizationProfile() *OptimizationProfile
func DefaultOptimizationProfiles ¶
func DefaultOptimizationProfiles() []*OptimizationProfile
func (*OptimizationProfile) CalculateScore ¶
func (op *OptimizationProfile) CalculateScore(metrics *PerformanceMetrics) float64
func (*OptimizationProfile) FromJSON ¶
func (op *OptimizationProfile) FromJSON(data []byte) error
func (*OptimizationProfile) IsHealthy ¶
func (op *OptimizationProfile) IsHealthy() bool
func (*OptimizationProfile) ToJSON ¶
func (op *OptimizationProfile) ToJSON() ([]byte, error)
func (*OptimizationProfile) Validate ¶
func (op *OptimizationProfile) Validate() error
type OptimizationRecommendation ¶
type OptimizationRecommendation struct {
RuleName string `json:"rule_name"`
Priority int `json:"priority"`
Type string `json:"type"`
Target string `json:"target"`
Action string `json:"action"`
Parameters map[string]interface{} `json:"parameters"`
Confidence float64 `json:"confidence"`
Impact string `json:"impact"`
Reason string `json:"reason"`
Timestamp time.Time `json:"timestamp"`
}
type OptimizationResult ¶
type OptimizationResult struct {
Strategy string `json:"strategy"`
Success bool `json:"success"`
Changes []ResourceChange `json:"changes"`
Confidence float64 `json:"confidence"`
EstimatedGain map[string]float64 `json:"estimated_gain"`
Metadata map[string]interface{} `json:"metadata"`
Timestamp time.Time `json:"timestamp"`
}
type OptimizationRule ¶
type OptimizationRule interface {
Evaluate(ctx context.Context, metrics *MetricsData) (*OptimizationRecommendation, error)
GetRuleName() string
GetPriority() int
IsEnabled() bool
}
type OptimizationScheduler ¶
type OptimizationScheduler struct {
// contains filtered or unexported fields
}
func NewOptimizationScheduler ¶
func NewOptimizationScheduler() *OptimizationScheduler
func (*OptimizationScheduler) AddTask ¶
func (os *OptimizationScheduler) AddTask(task OptimizationTask) error
func (*OptimizationScheduler) Start ¶
func (os *OptimizationScheduler) Start(ctx context.Context) error
func (*OptimizationScheduler) Stop ¶
func (os *OptimizationScheduler) Stop() error
type OptimizationStrategy ¶
type OptimizationStrategy interface {
Optimize(ctx context.Context, current *ResourceState, target *OptimizationTarget) (*OptimizationResult, error)
GetStrategyName() string
SupportsTarget(target *OptimizationTarget) bool
}
type OptimizationTarget ¶
type OptimizationTask ¶
type OptimizationTask struct {
ID string `json:"id"`
Name string `json:"name"`
Type string `json:"type"`
Target string `json:"target"`
Schedule string `json:"schedule"`
Parameters map[string]interface{} `json:"parameters"`
Status string `json:"status"`
LastRun time.Time `json:"last_run"`
NextRun time.Time `json:"next_run"`
RunCount int `json:"run_count"`
SuccessCount int `json:"success_count"`
FailureCount int `json:"failure_count"`
CreatedAt time.Time `json:"created_at"`
}
type PerformanceMetrics ¶
type PerformanceMetrics struct {
Throughput float64 `json:"throughput"`
Latency time.Duration `json:"latency"`
ErrorRate float64 `json:"error_rate"`
Availability float64 `json:"availability"`
ResponseTime time.Duration `json:"response_time"`
QueueDepth int `json:"queue_depth"`
Custom map[string]float64 `json:"custom"`
}
type PerformanceMonitor ¶
type PerformanceMonitor struct {
// contains filtered or unexported fields
}
PerformanceMonitor monitors and adjusts performance parameters.
func NewPerformanceMonitor ¶
func NewPerformanceMonitor(config *OptimizationConfig) *PerformanceMonitor
NewPerformanceMonitor creates a new performance monitor.
func (*PerformanceMonitor) Start ¶
func (pm *PerformanceMonitor) Start()
Start starts the performance monitor.
func (*PerformanceMonitor) Stop ¶
func (pm *PerformanceMonitor) Stop()
Stop stops the performance monitor.
func (*PerformanceMonitor) TriggerAdjustment ¶
func (pm *PerformanceMonitor) TriggerAdjustment()
TriggerAdjustment triggers a performance adjustment.
type ResourceChange ¶
type ResourceConstraint ¶
type ResourceConstraints ¶
type ResourceConstraints struct {
CPU ResourceRange `json:"cpu"`
Memory ResourceRange `json:"memory"`
Storage ResourceRange `json:"storage"`
Network NetworkLimits `json:"network"`
Latency LatencyLimits `json:"latency"`
Custom map[string]interface{} `json:"custom"`
}
type ResourceOptimizer ¶
type ResourceOptimizer struct {
// contains filtered or unexported fields
}
func NewResourceOptimizer ¶
func NewResourceOptimizer() *ResourceOptimizer
func (*ResourceOptimizer) AddStrategy ¶
func (ro *ResourceOptimizer) AddStrategy(name string, strategy OptimizationStrategy)
func (*ResourceOptimizer) SelectStrategy ¶
func (ro *ResourceOptimizer) SelectStrategy(target *OptimizationTarget) (OptimizationStrategy, error)
type ResourceRange ¶
type ResourceState ¶
type ResourceState struct {
Resources map[string]ResourceUsage `json:"resources"`
Performance PerformanceMetrics `json:"performance"`
Health HealthStatus `json:"health"`
Timestamp time.Time `json:"timestamp"`
}
type ResourceUsage ¶
type TaskExecution ¶
type TaskExecutor ¶
type TaskExecutor struct {
// contains filtered or unexported fields
}
func NewTaskExecutor ¶
func NewTaskExecutor(maxConcurrent int) *TaskExecutor
func (*TaskExecutor) Stop ¶
func (te *TaskExecutor) Stop() error
type TaskWorker ¶
type TaskWorker struct {
ID int
// contains filtered or unexported fields
}
Click to show internal directories.
Click to hide internal directories.