本文整理匯總了Golang中k8s/io/contrib/docker-micro-benchmark/helpers.DockerHelper類的典型用法代碼示例。如果您正苦於以下問題:Golang DockerHelper類的具體用法?Golang DockerHelper怎麽用?Golang DockerHelper使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了DockerHelper類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: benchmarkContainerStart
func benchmarkContainerStart(d *helpers.DockerHelper) {
cfg := containerOpConfig
period := cfg["period"].(time.Duration)
routine := cfg["routine"].(int)
func() {
defer d.LogError()
helpers.LogTitle("container_op")
helpers.LogEVar(map[string]interface{}{
"period": period,
"routine": routine,
})
helpers.LogLabels("qps", "cps")
for _, q := range cfg["qps"].([]float64) {
start := time.Now()
latencies := d.DoParallelContainerStartBenchmark(q, period, routine)
cps := float64(len(latencies)) / time.Now().Sub(start).Seconds()
helpers.LogResult(latencies, helpers.Ftoas(q, cps)...)
start = time.Now()
latencies = d.DoParallelContainerStopBenchmark(q, routine)
cps = float64(len(latencies)) / time.Now().Sub(start).Seconds()
helpers.LogResult(latencies, helpers.Ftoas(q, cps)...)
}
}()
}
示例2: benchmarkVariesInterval
func benchmarkVariesInterval(d *helpers.DockerHelper) {
alive := d.GetContainerNum(false)
dead := d.GetContainerNum(true) - alive
containerIDs := d.GetContainerIDs()
cfg := variesIntervalConfig
listIntervals := cfg["list interval"].([]time.Duration)
listPeriod := cfg["list period"].(time.Duration)
func() {
defer d.LogError()
helpers.LogTitle("list_all")
helpers.LogEVar(map[string]interface{}{
"#alive": alive,
"#dead": dead,
"all": true,
"period": listPeriod,
})
helpers.LogLabels("interval")
for _, curInterval := range listIntervals {
latencies := d.DoListContainerBenchmark(curInterval, listPeriod, true)
helpers.LogResult(latencies, helpers.Itoas(int(curInterval/time.Millisecond))...)
}
}()
func() {
defer d.LogError()
helpers.LogTitle("list_alive")
helpers.LogEVar(map[string]interface{}{
"#alive": alive,
"#dead": dead,
"all": false,
"period": listPeriod,
})
helpers.LogLabels("interval")
for _, curInterval := range listIntervals {
latencies := d.DoListContainerBenchmark(curInterval, listPeriod, false)
helpers.LogResult(latencies, helpers.Itoas(int(curInterval/time.Millisecond))...)
}
}()
func() {
defer d.LogError()
inspectIntervals := cfg["inspect interval"].([]time.Duration)
inspectPeriod := cfg["inspect period"].(time.Duration)
helpers.LogTitle("inspect")
helpers.LogEVar(map[string]interface{}{
"#alive": alive,
"#dead": dead,
"period": inspectPeriod,
})
helpers.LogLabels("interval")
for _, curInterval := range inspectIntervals {
latencies := d.DoInspectContainerBenchmark(curInterval, inspectPeriod, containerIDs)
helpers.LogResult(latencies, helpers.Itoas(int(curInterval/time.Millisecond))...)
}
}()
}
示例3: benchmarkVariesContainerNumber
func benchmarkVariesContainerNumber(d *helpers.DockerHelper) {
cfg := variesContainerNumConfig
deadContainers := cfg["dead"].([]int)
aliveContainers := cfg["alive"].([]int)
period := cfg["period"].(time.Duration)
interval := cfg["interval"].(time.Duration)
dead := deadContainers[0]
alive := aliveContainers[0]
ids := append(d.CreateDeadContainers(dead), d.CreateAliveContainers(alive)...)
func() {
defer d.LogError()
helpers.LogTitle("varies_container")
helpers.LogEVar(map[string]interface{}{
"period": period,
"interval": interval,
})
helpers.LogLabels("#dead", "#alive", "#total")
for i, num := range append(deadContainers, aliveContainers...) {
if i < len(deadContainers) {
// Create more dead containers
ids = append(ids, d.CreateDeadContainers(num-dead)...)
dead = num
} else {
// Create more alive containers
ids = append(ids, d.CreateAliveContainers(num-alive)...)
alive = num
}
total := dead + alive
latencies := d.DoListContainerBenchmark(interval, period, true)
helpers.LogResult(latencies, helpers.Itoas(dead, alive, total)...)
latencies = d.DoListContainerBenchmark(interval, period, false)
helpers.LogResult(latencies, helpers.Itoas(dead, alive, total)...)
latencies = d.DoInspectContainerBenchmark(interval, period, ids)
helpers.LogResult(latencies, helpers.Itoas(dead, alive, total)...)
}
}()
}
示例4: benchmarkVariesRoutineNumber
func benchmarkVariesRoutineNumber(d *helpers.DockerHelper) {
alive := d.GetContainerNum(false)
dead := d.GetContainerNum(true) - alive
containerIDs := d.GetContainerIDs()
cfg := variesRoutineNumConfig
routines := cfg["routines"].([]int)
period := cfg["period"].(time.Duration)
func() {
defer d.LogError()
listInterval := cfg["list interval"].(time.Duration)
helpers.LogTitle("list_all")
helpers.LogEVar(map[string]interface{}{
"#alive": alive,
"#dead": dead,
"all": true,
"interval": listInterval,
"period": period,
})
helpers.LogLabels("#routines")
for _, curRoutineNumber := range routines {
latencies := d.DoParallelListContainerBenchmark(listInterval, period, curRoutineNumber, true)
helpers.LogResult(latencies, helpers.Itoas(curRoutineNumber)...)
}
}()
func() {
defer d.LogError()
inspectInterval := cfg["inspect interval"].(time.Duration)
helpers.LogTitle("inspect")
helpers.LogEVar(map[string]interface{}{
"#alive": alive,
"#dead": dead,
"interval": inspectInterval,
"period": period,
})
helpers.LogLabels("#routines")
for _, curRoutineNumber := range routines {
latencies := d.DoParallelInspectContainerBenchmark(inspectInterval, period, curRoutineNumber, containerIDs)
helpers.LogResult(latencies, helpers.Itoas(curRoutineNumber)...)
}
}()
}