AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)

概述

随着移动设备的激增以及物联网 (IoT) 的崛起,通过 API 让应用程序访问后端系统和数据变得越来越常见。
AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第1张图片
通过 Amazon API Gateway,您可以根据在 AWS Lambda 中运行的代码快速、轻松地创建自定义 API,然后通过 API 调用 Lambda 代码。Amazon API Gateway 可以用您的账户执行 AWS Lambda 代码,也可以在 AWS 外部通过可公共访问的 HTTP 端点来调用 AWS Elastic Beanstalk、Amazon EC2 或 Web 服务。利用 Amazon API Gateway 控制台,您可以定义 REST API 及其关联的资源和方法、管理 API 生命周期、生成客户端 SDK,并能查看 API 指标。下文讲述通过Api Gateway + Lambda + Dynamodb建立一个HTTP接口我们通过手机或者IOT设备去访问注册。
AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第2张图片

Dynamodb

概述

DynamoDB是亚马逊一个完全托管的NoSQL数据库服务,快速,性能好,扩展性好,操作方便。只需要在AWS(Amazon Web Service)管理控制台上面,用鼠标轻松点击几下,用户就可以自己创建一个新的Amazon DynamoDB数据库表,也可以通过命令行来创建,并可以根据实际需求对表进行扩展和收缩,这个过程既不需要停止对外服务,也不会降低服务性能。通过AWS管理控制台,用户还可以看见资源利用情况和各种性能指标。Amazon DynamoDB可以使得用户把操作和扩展分布式数据库的沉重负担,交付给AWS来处理,这样,用户就不需要担心硬件配置、复制、软件安装和打补丁包、簇扩展等。DynamoDB是亚马逊的key-value模式的存储平台,可用性和扩展性都很好,性能也不错:读写访问中99.9%的响应时间都在300ms内。DynamoDB的NoSQL解决方案,也是使用键/值对存储的模式,而且通过服务器把所有的数据存储在SSD上的三个不同的区域。如果有更高的传输需求,DynamoDB也可以在后台添加更多的服务器。
AmazonDynamoDB被设计成用来解决数据库管理、性能、可扩展性和可靠性等核心问题。开发人员可以创建一个数据库表,该表可以存储和检索任何数量的数据,并且可以

1.创建表

Dynamodb创建表的话就比较简单, 简单的创建一个表就可以了, 也不用创建字段,和mongodb很相似,因为比较简单看下教程就可以了
入门教程
https://aws.amazon.com/getting-started/tutorials/create-nosql-table/?nc1=h_ls
详细教程
http://docs.aws.amazon.com/amazondynamodb/latest/gettingstartedguide/GettingStarted.JsShell.html

根据以上的教程我们就把表建好了,在其它Service中我们就可以存储和查询数据

Lambda

概述

AWS Lambda是一个用于部署代码、管理服务以及监控轻量级服务运行状态的细粒度方法。通过 AWS的Lambda服务,无需配置或管理服务器即可运行代码。您只需按消耗的计算时间付费 – 代码未运行时不产生费用。借助 Lambda,您几乎可以为任何类型的应用程序或后端服务运行代码,而且全部无需管理。只需上传您的代码,Lambda 会处理运行和扩展高可用性代码所需的一切工作。您可以将您的代码设置为自动从其他 AWS 服务触发,或者直接从任何 Web 或移动应用程序调用。

第一步进入Lambda

1.点击Lambda进入如下界面

AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第3张图片

2.点击 Get Started Now 进入如下界面

AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第4张图片

3.点击 下一步AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第5张图片

4.填写方法名称,运行环境 (本例中选择的是Node.js)

a. 填写方法的名称
b. 填写描述,基本算是注释可填可不填
c. 选择运行环境(本例中选择的是Nodejs运行环境)
d. 编写代码(有三种方式:直接编写; 上传zip代码文件; 填写S3的一个链接前提是代码上传到S3中)
e. 选择一个角色,假如在Lambda代码中有使用数据库,则需要给数据库的权限 这样就需要进入IAM中建立一个角色赋予Dynamodb的权限
AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第6张图片
AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第7张图片

AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第8张图片
AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第9张图片

然后点击下一步,创建成功,
f. 接着就可以选中进入编辑代码

Api Gateway

概述

Amazon的API Gateway 是一种完全托管的服务,可以帮助开发者轻松创建、发布、维护、监控和保护任意规模的 API。只需在 AWS 管理控制台中点击几下,您便可以创建可充当应用程序“前门”的 API,从后端服务访问数据、业务逻辑或功能,例如基于 Amazon Elastic Compute Cloud (Amazon EC2) 运行的工作负载、基于 AWS Lambda 运行的代码或任意 Web 应用。Amazon API Gateway 负责管理所有任务,涉及接受和处理成千上万个并发 API 调用,包括流量管理、授权和访问控制、监控以及 API 版本管理。Amazon API Gateway 没有最低费用或启动成本,您只需为收到的 API 调用和传输出去的数据量付费。
AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第10张图片
AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第11张图片

Api Gateway Doc

AWS - 使用AWS创建HTTP接口 (Api Gateway + Lambda + Dynamodb)_第12张图片
1. 创建一个新的API
2. 新API的名称 Description API的用途(可有可无)
3. 在Resources 中类型选择为Lambda Function, 因为我们调用的这个Lambda 服务去保存和从数据库查询数据,我们的Lambda建在哪个地区就选者哪个地区,然后选择Lambda Function

你可能感兴趣的:(AWS(Amazon,Amazon,Web,Service))