本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
適用於 Go 的 DAX 軟體開發套件
請按照此程序操作,在 Amazon EC2 執行個體上執行 Amazon DynamoDB Accelerator (DAX) 適用於 Go 的開發套件範例應用程式。
為 DAX 執行適用於 Go 的開發套件範例
-
在您的 Amazon EC2 執行個體上設定適用於 Go 的開發套件:
-
安裝 Go 程式設計語言 (
Golang)。sudo yum install -y golang -
測試 Golang 是否已安裝並正常運作。
go version這類的訊息應會出現。
go version go1.15.5 linux/amd64其餘指示仰賴模組支援,成為 Go 版本 1.13 的預設。
-
-
安裝範例 Golang 應用程式。
go get github.com/aws-samples/aws-dax-go-sample -
執行下列 Golang 程式。第一個程式會建立名為
TryDaxGoTable的 DynamoDB 資料表。第二個程式會將資料寫入資料表。go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command create-tablego run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command put-item -
執行下列 Golang 程式。
go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command get-itemgo run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command querygo run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command scan記下計時資訊:
GetItem、Query和Scan測試所需要的毫秒數。 -
在先前的步驟中,您已針對 DynamoDB 端點執行程式。現在,請再次執行程式,但這一次
GetItem、Query和Scan操作會由您的 DAX 叢集處理。若要判斷您 DAX 叢集的端點,請選擇下列其中一個項目:
-
使用 DynamoDB 主控台:選擇您的 DAX 叢集。叢集端點會在主控台上顯示,如以下範例。
dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com -
使用 AWS CLI :輸入下列命令。
aws dax describe-clusters --query "Clusters[*].ClusterDiscoveryEndpoint"如下列範例所示,叢集端點會在輸出上顯示。
{ "Address": "my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com", "Port": 8111, "URL": "dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com" }
現在重新執行程式,但這一次,請將叢集端點做為命令列參數指定。
go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dax -command get-item -endpoint my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com:8111go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dax -command query -endpoint my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com:8111go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dax -command scan -endpoint my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com:8111查看輸出的剩餘部分,並記下計時資訊。使用 DAX 的
GetItem、Query和Scan已耗用時間應遠低於使用 DynamoDB 的已耗用時間。 -
-
執行以下 Golang 程式,刪除
TryDaxGoTable。go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command delete-table