Node.js 與 DAX - Amazon DynamoDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Node.js 與 DAX

請依照下列步驟,在 Amazon EC2執行個體上執行 Node.js 範例應用程式。

執行 的 Node.js 範例 DAX
  1. 在 Amazon EC2執行個體上設定 Node.js,如下所示:

    1. 安裝節點版本管理工具 (nvm)。

      curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
    2. 使用 nvm 安裝 Node.js。

      nvm install 12.16.3
    3. 測試 Node.js 已安裝且正常運作。

      node -e "console.log('Running Node.js ' + process.version)"

      這應該會顯示以下訊息。

      Running Node.js v12.16.3

  2. 使用DAX節點套件管理員 (npm) 安裝 Node.js 用戶端。

    npm install amazon-dax-client
  3. 下載範例程式來源碼 (.zip 檔案)。

    wget http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/samples/TryDax.zip

    下載完成後,解壓縮來源檔案。

    unzip TryDax.zip
  4. 執行下列 Node.js 程式。第一個程式會建立名為 TryDaxTable 的 Amazon DynamoDB 資料表。第二個程式會將資料寫入資料表。

    node 01-create-table.js node 02-write-data.js
  5. 執行下列 Node.js 程式。

    node 03-getitem-test.js node 04-query-test.js node 05-scan-test.js

    記下計時資訊:GetItemQueryScan 測試所需要的毫秒數。

  6. 在先前的步驟中,您已針對 DynamoDB 端點執行程式。再次執行程式,但這次, GetItemQueryScan操作會由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" }

    現在重新執行程式,但這一次,請將叢集端點做為命令列參數指定。

    node 03-getitem-test.js dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com node 04-query-test.js dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com node 05-scan-test.js dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com

    查看輸出的剩餘部分,並記下計時資訊。GetItemQuery和 的經過時間Scan應該DAX比 DynamoDB 明顯更低。

  7. 執行以下 Node.js 程式,刪除 TryDaxTable

    node 06-delete-table

如需這些程式的詳細資訊,請參閱下列各節: