AWS Serverless培训分享

本文涉及的产品
函数计算FC,每月15万CU 3个月
简介: AWS Serverless培训分享

最近公司大牛组织培训了一些有关aws的serverless培训,小编把整理后的PPT带过来了,有需要的一起来看看吧!


内容主要分为两个板块,第一是PPT介绍,第二是手动操作指导。


640.jpg640.jpg


640.jpg

640.jpg


640.png640.png

640.jpg

640.jpg

640.jpg

640.jpg

640.png640.png640.png



640.png


640.png

640.png

640.png

640.png640.png

640.png640.png

640.png



640.png


640.png

640.png640.png


PPT部分结束



下面是练习指引部分:

登录地址:

https://signin.aws.amazon.com

AWS无服务器计算应用动手实验

 

前提条件

  • AWS账号或CIO AWS环境访问权限(仅限公司内部)
  • VPN账号访问权限(仅限公司内部)

 

第一章   简介

()

 

第二章   创建静态Web站点

  1. 创建S3 Bucket并命名<姓名全拼>-chatapp(cuichikun-chatapp),为S3 Bucket配置公开访问权限。
  2. Policy中的s3-bucket.json文件内容拷贝到"Permissions"标签页"Bucket     Policy"文本框中并替换Bucket名字。
  3. Site文件夹内容上传到S3
  4. "属性(Properties)"标签页选择"Static     web hosting",填写默认文档(index     document)后保存。
  5. 使用"Static     Web Hosting"中的Endpoint     URL访问站点。

 

第三章   创建API

  1. 选择IAM服务
  2. Lambda创建Role来访问S3中的会话文件
  1. 创建Policy
  1. 服务选择S3
  2. 动作选择GetObject
  3. 输入Bucket名称及选择任意(any)对象
  4. Policy命名Lambda-S3-Access
  1. 创建Role
  1. 服务选择Lambda
  2. 查找并添加Lambda-S3-Access
  3. 查找并添加AWSLambdaBasicExecutionRole
  4. Role命名Lambda-Data
  1. 选择Lambda服务
  2. 创建代理Lambda方法
  1. 选择"Author      from scratch"
  2. 填写名称Chat-ProxyRuntime选择"Node.js 6.10"Role选择"Choose      an existing role"Existing Role选择Lambda-Data
  3. 创建方法
  4. Lambda\Chat-Proxy.js文件内容复制到代码文本框中,替换Bucket名称
  5. 创建测试事件(test event)
  6. 测试
  1. 创建API,选择API Gateway服务
  1. 新建API并命名Chat-API
  2. API(\)上创建资源(Create Resouce),勾选"Configure as proxy resource"并创建资源。
  3. Lambda      Function中选择步骤2中创建的Lambda方法名并保存。
  4. 创建API测试。
  5. 测试。
  1. 部署API
  1. 选择资源"/{proxy+}"后在Actions列表中选择Enable CORS
  2. Deploy API并创建名为"prodstage
  3. API Endpoint复制到剪切板。
  1. 更新代码
  1. 打开Site\js\config.js文件替换API Endpoint
  2. 上传Site\js文件夹到S3
  3. 通过网站URL在浏览器中打开网站,使用开发者工具查看API调用及返回结果。

 

第四章使用DynamoDB存储

  1. 选择DynamoDB服务
  2. 创建表Chat-Messages
  1. Primary keyConversationId类型string
  2. Sort keyTimestamp类型number
  3. 取消'Use default      settings'勾选
  4. 取消'Read      Capacity''Write Capacity'勾选
  5. Read capacity unitsWrite capacity units都填写1
  6. 创建
  1. 创建表Chat-Conversations
  1. Primary keyConversationId类型string
  2. Sort KeyUsername类型string
  3. 创建Partation KeyUsernameSort KeyConversationIdIndex
  4. 取消'Use default      settings'勾选
  5. 取消'Read      Capacity''Write Capacity'勾选
  6. Read capacity unitsWrite capacity units都填写1
  7. 创建
  1. 创建测试数据
  1. Chat-Messages表增加两个字段SenderMessage类型string,添加测试数据。
  2. Chat-Conversations表添加测试数据。
  1. 创建Policy(Lambda访问DynamoDB)
  1. 复制Policies\lambda-data.json文件内容到Policy文本框
  2. Policy命名为Lambda-Data-Access
  3. IAM里面找到角色(Role)"Lambda-Data",搜索并添加"Lambda-Data-Access" 到角色中。
  1. 更新Lambda代码
  1. Lambda\Chat-Proxy.js文件内容替换原Lambda方法代码并保存。
  2. 测试Lambda方法。
  1. 更新网站代码
  1. Site中文件更新S3静态站点。
  2. 在浏览器中测试静态站点。

 

第五章   拆解单块应用

  1. 选择Lambda服务
  1. 根据Lambda\Chat-Conversation-GET.js文件内容创建Chat-Conversation-GET方法并测试
  2. 根据Lambda\Chat-Messages-GET.js文件内容创建Chat-Messages-GET方法并测试
  3. 根据Lambda\Chat-Messages-POST.js文件内容创建Chat-Messages-POST方法并测试
  1. 选择API Gateway服务并选择Chat-API
  1. 选择Models,按Models文件夹下各文件内容创建ConversationConversationListNewMessage三个Model
  2. 选择左侧菜单Resources
  3. 删除资源/{proxy+}
  4. 创建Conversation      GET方法
  1. 创建资源(Resource)“conversations",路径"/conversations"
  2. 添加GET方法,指向Chat-Conversation-GET方法
  3. Method       Response里面为200状态选择ConversationList模板
  4. 测试API
  1. 创建Messages GET方法
  1. 在资源(Resource)"conversations"下面创建资源"messages",路径"/{id}"
  2. 添加GET方法,指向Chat-Messages-GET方法
  3. 导航到Integration Request > Mapping Templates > Request body       passthrough
  1. 选择"When there are no templates defined (recommended)"
  2. Content-Type添加application/json
  3. Mapping        Templates\Chat-Messages-GET-Input.vtl文件内容复制到模板中保存返回
  1. Response       Method里面为200状态选择Conversation模板
  2. 测试API
  1. 创建Messages POST方法
  1. 为资源"messages"添加POST方法,指向Chat-Messages-POST方法
  2. 导航到Method Request > Request Bodyapplication/json(Content-Type)添加NewMessage模板
  3. 导航到Integration Request > Mapping Templates > Request body       passthrough
  1. 选择"When there are no templates defined (recommended)"
  2. Content-Type添加application/json
  3. Mapping        Templates\Chat-Messages-POST-Input.vtl文件内容复制到模板中保存返回
  1.  测试API
  1. 更新网站代码
  1. Site中文件更新S3静态站点。
  2. 在浏览器中测试静态站点。

 

第六章   添加用户身份验证

  1. 创建用户池(User     Pool)
  1. 用户池名称ChatPool
  2. 选择Step through      settings
  3. 勾选allow login      with emaill,允许使用email登录,required attributes选择email
  4. 创建AppClient,输入appclient 名字website, 取消 generate      client secret勾选, attributes中只勾选和email相关的三个字段,取消其它字段勾选。
  1. 创建Policy
  1. 以文件Policies\lambda-cognito.json内容创建Policy,命名Lambda-Cognito
  1. 创建角色(Role)
  1. 创建角色Lambda-Cognito
  2. 添加Lambda-Cognito策略和AWSLambdaBasicExecutionRole策略。
  1. 创建Lambda方法
  1. 创建新的Lambda方法Chat-Users-GET
  2. 选择角色Lambda-Cognito
  3. 复制Lambda\Chat-Users-GET.js      代码到方法文本框
  1. 创建API
  1. 通过Models\UserList.json文件内容在API Gateway中创建新的Model命名UserList
  2. 在根(/)下创建新资源users,路径"/users"
  3. 向资源添加GET 方法,并选择Chat-Users-GET方法。
  4. Method      Response中为200状态选择UserList模板。
  5. 为资源/users执行Enable CORS
  1. Deploy     APIprod命名的stage
  2. 下载API JavaScript     SDK
  3. 解压缩后将文件夹添加到S3     Bucketjs文件夹下。
相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
4月前
|
编解码 弹性计算 运维
AWS无服务器直播解决方案
AWS无服务器直播解决方案
|
6月前
|
Cloud Native Serverless 异构计算
Serverless 架构问题之AWS Lambda在容器镜像层面的进展如何解决
Serverless 架构问题之AWS Lambda在容器镜像层面的进展如何解决
69 0
|
JSON 运维 监控
云端部署:使用AWS Lambda与公司流量监控软件实现无服务器架构
在当今数字化时代,跨平台移动应用的开发已经成为企业推广业务的一项关键工作。为了更好地监控和分析应用程序的性能,公司流量监控软件的整合变得至关重要。本文将介绍如何使用AWS Lambda和公司流量监控软件,构建一个高效的无服务器架构,实现对跨平台移动应用的流量监控。
304 0
|
弹性计算 运维 Cloud Native
Serverless 风起云涌,为什么阿里,微软,AWS 却开始折腾 OAM?
近日,AWS ECS 团队在官方 GitHub 上发布了一个名叫:Amazon ECS for Open Application Model 的开源项目,越来越多的厂商开始探索 OAM 的落地实践。OAM 到底有什么魅力,让多家云厂商联合起来共同拥抱呢?
Serverless 风起云涌,为什么阿里,微软,AWS 却开始折腾 OAM?
AWS 无服务器项目 与 AWS lambda 有什么区别?
版权声明:本文为 testcs_dn(微wx笑) 原创文章,非商用自由转载-保持署名-注明出处,谢谢。 https://blog.csdn.net/testcs_dn/article/details/79744051 在AWS Toolkit for Eclipse的用户指南中,我们能看到 无服务器项目 和  AWS Lambda,我按照指南分别 创建了两个项目。
1131 0
|
JSON Serverless 对象存储
|
存储 JavaScript 大数据
亚马逊AWS的Serverless架构
版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/60141447 亚马逊AWS的Serverless架构 作者:chszs,未经博主允许不得转载。
1437 0
|
1月前
|
人工智能 运维 物联网
云大使 X 函数计算 FC 专属活动上线!享返佣,一键打造 AI 应用
如今,AI 技术已经成为推动业务创新和增长的重要力量。但对于许多企业和开发者来说,如何高效、便捷地部署和管理 AI 应用仍然是一个挑战。阿里云函数计算 FC 以其免运维的特点,大大降低了 AI 应用部署的复杂性。用户无需担心底层资源的管理和运维问题,可以专注于应用的创新和开发,并且用户可以通过一键部署功能,迅速将 AI 大模型部署到云端,实现快速上线和迭代。函数计算目前推出了多种规格的云资源优惠套餐,用户可以根据实际需求灵活选择。

热门文章

最新文章