本文介绍如何使用Go SDK中的示例代码设置实例类型。
您可以通过SDK在创建函数或更新函数时指定使用弹性实例还是性能实例,系统后端会将您的请求路由至设置的实例类型中。
实例类型参数为:
- e1:弹性实例
- c1:性能实例
如果不指定实例类型,则默认为弹性实例。
SDK示例
// Go sdk
package main
import (
"os"
"github.com/aliyun/fc-go-sdk"
)
func main() {
// new fc client
/*
阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
本示例以将AccessKey和AccessSecretKey保存在环境变量中实现身份验证为例。
在运行本示例前请先在本地环境中设置环境变量ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET。
在FC Runtime运行环境下,配置执行权限后,ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET环境变量会自动被设置。
*/
accessKeyID := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
accessKeySecret := os.Getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
client, _ := fc.NewClient("endpoint", "2016-08-15",
accessKeyID, accessKeySecret)
// CreateService
serviceName := "TestService"
_, err := client.CreateService(fc.NewCreateServiceInput().
WithServiceName(serviceName))
if err != nil {
panic(err)
}
// CreateFunction
functionName := "TestFunction"
createFunctionInput := fc.NewCreateFunctionInput(serviceName).
WithFunctionName(functionName).
WithHandler("index.handler").
WithRuntime("python2.7").
WithCode(fc.NewCode().WithFiles("./code/index.py")).
WithTimeout(5).
WithInstanceType("c1") // 指定函数所属实例类型为性能实例。
_, err = client.CreateFunction(createFunctionInput)
if err != nil {
panic(err)
}
return
}