传输加速可提升全球各地用户对OSS的访问速度,适用于远距离数据传输、GB或TB级大文件上传和下载的场景。
注意事项
开启传输加速
以下代码用于开启目标存储空间examplebucket的传输加速功能:
package main
import (
"fmt"
"os"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
func HandleError(err error) {
fmt.Println("Error:", err)
os.Exit(-1)
}
func main() {
// 创建OSSClient实例。
// Endpoint为Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
// 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
client, err := oss.New("yourEndpoint", "yourAccessKeyId", "yourAccessKeySecret")
if err != nil {
HandleError(err)
}
// 填写Bucket名称。
bucketName := "examplebucket"
// 开启Bucket的传输加速状态。
// Enabled表示传输加速的开关,取值为true表示开启传输加速,取值为false表示关闭传输加速。
accConfig := oss.TransferAccConfiguration{}
accConfig.Enabled = true
err = client.SetBucketTransferAcc(bucketName, accConfig)
if err != nil {
HandleError(err)
}
fmt.Printf("set bucket transfer accelerate success\n")
}
查询传输加速状态
以下代码用于查询目标存储空间examplebucket的传输加速状态:
package main
import (
"fmt"
"os"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
func HandleError(err error) {
fmt.Println("Error:", err)
os.Exit(-1)
}
func main() {
// 创建OSSClient实例。
// Endpoint为Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
// 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
client, err := oss.New("yourEndpoint", "yourAccessKeyId", "yourAccessKeySecret")
if err != nil {
HandleError(err)
}
// 填写Bucket名称。
bucketName := "examplebucket"
// 查询目标Bucket的传输加速状态。
accConfig, err := client.GetBucketTransferAcc(bucketName)
if err != nil {
HandleError(err)
}
fmt.Printf("accConfigRes.Enabled:%T\n", accConfig.Enabled)
}
相关文档
- 关于开启传输加速的API接口说明,请参见PutBucketTransferAcceleration。
- 关于查询传输加速状态的API接口说明,请参见GetBucketTransferAcceleration。