
-
前端(Frontend)
构建构件存储在amazon Simple Storage Service(AmazonS3)桶中。维护Wed应用程序资产,例如书籍封面照片和Wed图形。Amazon CloudFront从AmazonS3缓存前端内容,通过CloudFront分类将应用程序呈现给用户。前端只与Amazon cognitive和Amazon API Gateway交互。AmazonCognito用于所有身份验证请求。API网关(和AWS Lambda)用于跨DynamoDB、Amazon OpenSearch ServiceAmazon ElastiCache和Amazon交互的所有的API调用。
-
地区(Region)
此示例体系结构的所有资源都与特定的AWS区域相关联,例如us-east-1(弗吉尼亚州北部)。
-
亚马逊监测( Amazon CloudWatch )
CloudWatch提供的功能开发人员和管理员使用。这些包括CloudWatchlogs, alarm以及用于跟踪web应用程序的使用和性能的图形。
-
亚马逊API网关( Amazon API Gateway )
API Gateway充当前端(AmazonCloudFront、Amazon S3)和AWSLambda之间的借口层,后者调用后端(数据库等等)。您应该记录应用程序使用的所有API。
-
后端( Backend )
后端基础设施的核心由Amazon Cognito、DynamoDBLambda和Amazon API Gateway组成。该应用程序使用Amazon Cognito进行用户身份验证,并使用DynamoDB存储图书、订单和结账的所有数据。
当添加图书和订单时,DynamoDB Streams将更新推送到Lambda函数,从而更新Amazon OpenSearch Service集群和Amazon ElastiCache for Redis集群。OpenSearch Service提供图书搜素功能,neptune存储用户的社交图谱和图书购买信息,以提供推荐。ElastiCache for Redispowers图书排行榜。
-
亚马逊( Amazon VPC )
Amazon Virtual Private Cloud (AmazonVPC)与Amazon OpenSearchService、Amazon ElastiCache for Redisand Amazon Neptune配合使用。
-
AWS Lambda
在不同的地方使用AWS Lambda来运行应用程序,如架构图所示。所部署的多重Lambda函数都有文档记录。
-
亚马逊DynamoDB(Amazon DynamoDB)
这个示例应用程序的后端使用DynamoDB来激活动态扩展和添加功能,以便快速改进您的电子商务应用程序。应用程序在DynamoDB中创建了三个表:Books、Orders和cart。DynamoDB主键由分区(散列)键和可选排序(范围)键组成。主键(分区键和排序键一起)必须是唯一的。
-
数据流( Streams )
DynamoDB Streams捕获DynamoDB表中的数据修改事件。关于这些事件的数据几乎实时地按照事件发生的顺序出现在流中。
-
如何获取DynamoDB资源的信息?
部署使用DynamoDB的应用程序需要创建和配置许多组件。比如:
表
项目
属性
主键
读写容量模式
-
如何使用DynamoDB控制台查找有关表的信息?
导航到DynamoDB控制台,并在左侧导航窗格中选择Tables。“表”页面列出了所选AWS区域中的所有表名。您还可以找到状态、分区键、排序键、索引、读/写容量模式、大小和类等信息。

1.Region(地区)
DynamoDB表与anAWS区域相关联。要找到您的资源,您必须在正确的区域。此外,当您与AWS支持人员沟通时,您必须提供区域。
2.Name and status(姓名和状态)
每个表的名称和状态
3.Partition key(分区键)
分区键名称和数据类型。数据类型是字符串、二进制或数字。
4.Sort key(排序关键字)
排序键和数据类型的名称。数据类型为字符串、二进制或数字。
5.Indexes(索引)
为每个表配置的索引数。可以使用二级索引对不属于表主键的属性执行查询。
索引是本地的或全局的。本地二级索引与其基表具有相同的分区键,但排序键不同。使用全局二级索引查询原始表的主键以外的属性。
6.Read capacity mode(读容量模式)
读容量模式分为“按需”和“已发放”。
7.Write capacity mode(写容量模式)
写容量模式分为“按需”和“已发放”。
8.Size(大小)
表中所有项的总大小(以字节为单位)。DynamoDB大约每6小时更新一次大小信息。
注意:表的大小不是实时更新的,可能需要6个小时才能更新值。
9.Table class(表类)
表类是DynamoDB standard或DynamoDB Standard-IA。Standard是默认的表类。
-
如何使用DynamoDB控制台查找关于表的更多信息?
选择表名后,将显示一个提供有关表的详细信息的页面。一系列选项卡包含有关表的索引、监控指标、全局表、备份、导出和流以及其他设置的详细信息。此示例显示Overview选项卡,其中提供常规信息和附加信息。你已经了解了大概的情况。

1.DynamoDB stream(DynamoDB流)
DynamoDB的Kinesis Data Streams捕获表中的项级更改,并将更改复制到Kinesisdata流。然后,您可以使用和管理来自Kinesis的变更信息。
2.Point-in-time recovery(时间点恢复)
当打开时,时间点恢复提供连续备份,直到您显式地关闭它。
3.Time to Live(生命周期)
使用生存时间(TTL),您可以定义项目时间戳,以确定何时不再需要某个项目。在指定时间戳的日期和时间之后不久,DynamoDB将从表中删除条目,而不会消耗任何写吞吐量。
4.Replication Regions(复制区域)
复制表的其他AWS区域
5.Encryption(加密)
存储在DynamoDB中的所有用户数据都是完全加密的。通过使用存储在AWS密钥管理服务(AWS KMS)中的加密密钥对您的所有数据进行加密,从而增强了安全性。
有三种加密选项:
-
由 Amazon拥有-默认情况下, DynamoDB管理加密密钥,不收取额外费用。
-
AWS托管密钥-密钥存储在您的账户中,由 AWS KMS管理。 适用AWS KMS收费。
-
存储在您的账户中,并由您拥有和管理-密钥存储在您的账户中,并由您拥有和管理。需支付 AWS KMS费用。
6.ARN
表的Amazon Resource Name (ARN)。如果您联系AWS支持,则可能需要提供ARN。
-
如何监控表上的操作?
要检查DynamoDB表的Amazon CloudWatch指标,请选择Monitor选项卡。指标包括读利用率、写利用率和读/写受限请求。

该图标展示了一段时间内所使用的读容量单位的数量。您可以跟踪所提供的吞吐量使用了多少。
2.Write usage(写用量)
写利用率图展示了一段时间内所使用的写容量单位的数量。您可以跟踪所提供的吞吐量有多少被使用了。
3.Other metrics(其他指标)
您可以在此选项卡中监视的其他DynamoDB指标。
-
如何浏览单个表项?
选择表名后,将显示一个提供有关表的详细信息的页面。选择Explore table items按钮。
1.List of table items(表项列表)
在选择Explore table items按钮之后,您可以向下滚动到scan /Query items部分下方,以检查从表返回的所有项目的列表。

2.Explore or update individual item(探索或更新单个项目)
当您为列出的任何项目选择分区键时,您可以访问项目编辑器。项目显示为可编辑表单或JSON。

3.Item in JSON(JSON格式的项目)
如果选择JSON按钮,则可以用JSON编辑项目。
