資料金鑰快取範例 - AWS Encryption SDK

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

資料金鑰快取範例

此範例使用。資料金鑰快取具有本機快取,來加速應用程式,其中多個裝置產生的資料會在不同區域進行加密與存放。

在此案例中,多個資料製作者產生資料、加密並寫入Kinesis 串流在每個區域。AWS Lambda函數 (消費者) 解密串流並寫入純文字資料到區域的 DynamoDB 表格。資料製作者和消費者使用AWS Encryption SDK和一個AWS KMS主金鑰提供者。為了減少對 KMS 的呼叫,每個製作者和消費者都有自己的本機快取。

您可以在這些範例中找到原始程式碼。Java 和 Python。範例也包含用於定義範例資源的 AWS CloudFormation 範本。

此圖表顯示資料製作者和消費者如何使用AWS KMS、Amazon Kinesis Data Streams 和 Amazon DynamoDB 專用。

本機快取結果

下表顯示本機快取在此範例中將對 KMS 的呼叫總數 (每秒每個區域) 減少至原始值的 1%。

製作者請求
每秒每個用戶端的請求數 每個區域的用戶端 每秒每個區域的平均請求數
產生資料金鑰 (us-west-2) 加密資料金鑰 (eu-central-1) 總數 (每個區域)
無快取 1 1 1 500 500
本機快取 1 rps/100 次使用 1 rps/100 次使用 1 rps/100 次使用 500 5
消費者請求
每秒每個用戶端的請求數 每個區域的用戶端 每秒每個區域的平均請求數
解密資料金鑰 製作者 合計
無快取 每個製作者 1 rps 500 500 2 1,000
本機快取 每個製作者 1 rps/100 次使用 500 5 2 10