go并发压测文件存储

使用go进行Minio并发存储压测时内存占用过高

attachments-2021-02-MqwmWiGp6035b0c825cce.pngattachments-2021-02-roVjPPpk6035b016935cf.png附压测代码

func main() {
minio := getMinioConnection()
amount := 50
var wg sync.WaitGroup
wg.Add(amount)
for i := 0;i<amount;i++{
go func(num int, wg *sync.WaitGroup){
defer wg.Done()
startT := time.Now()
accountname,err:=storeKey(minio, i)
endT := time.Since(startT)
if err !=nil{
fmt.Printf("accountname:%v ,err: %v \n",accountname,err)
}else {
fmt.Printf("accountname:%v ,storeTime: %v \n",accountname,strconv.FormatFloat(endT.Seconds()*1000, 'f', -1, 64))
}
}(i, &wg)
}
wg.Wait()
fmt.Println("测试结束!")
}
func storeKey(minioClient *minio.Client, num int) (accountname string, err error) {
objectName := "miniotest/storeKey" + strconv.FormatInt(time.Now().UnixNano()+int64(num),10)
reader := strings.NewReader(content)
options := minio.PutObjectOptions{ContentType:"application/txt"}
if _, err := minioClient.PutObject(bucketName, objectName, reader,
-1, options) ; err != nil {
return objectName, err
}
return objectName, nil
}
请先 登录 后评论

1 个回答

MinIO

您目前的环境配置是什么样的呀?

MinIO是有官方的标准推荐配置的。

请先 登录 后评论
  • 1 关注
  • 0 收藏,23 浏览
  • JoSong 提出于 1天前

相似问题