因为Lambda 所以Serverless

进化过程

课程章节:https://edu.51cto.com//center/course/lesson/index?id=199646

作用和优势

event --> 胶水 --> server

  • 无需维护
  • 天然高可用
  • 自动扩展
  • 按调用付费
  • 安全可靠

撰写一个Lambda函数

触发的事件

实验设计

客户按下IoT button触发lamdba函数,Send SMS 给员工。

DynamoDB 管理数据

相较于“关系型数据库”的优势:

  • 不需要多表查询
  • 适合高频词高并发访问
  • 可以无限提高表的读写能力

创建第一个表

记录"顾客请求"的表。

创建第二个表

记录Button对应的区域信息、员工信息。

给表添加一个“项目”,也就是具体内容。

Lambda 访问 DynamoDB Table

当前,需要给Lambda 加上权限去访问 DynamoDB 表。

(1) 查看当前已有的权限。

第一步,AWS Lambda --> 函数 --> 配置 --> 基本信息 --> 现有角色

第二步,IAM服务 --> 角色

(2) 新增“策略”

第一步,IAM页面中,策略 --> 创建策略 --> 策略生成器,添加上“资源名称ARN of 两个表”,两个ARN用“逗号”隔开。

第二步,策略生成结果。可见 Resource 中多了两条。"策略名称”可以自定义。

(3) 策略与角色相关联

第一步,在“角色”中找到对应的Lambda函数。

第二步,附加上新创建的策略。找到策略了名称,再点击“附加策略”即可。

第三步,最后在IAM的角色页面中多了对应的新的一条策略。

(4) 代码添加

第一步,使用put方法处理接收到的request。先定义参数request_params,再写docClient.put 函数。

第二步,测试程序,模拟button摁下后的触发事件。

第三步,查看DynamoDB结果,发现多了一条。

客户案例

Finra 交易合规性检查

每小时峰值可达750亿次。

S3自动出发lambda函数

通过SQS作为缓冲区。

Coca-Cola自助贩卖机

支付请求 --> API Gateway --> Lambda --> 发送支付通知给客户

每月8000万次调用 与 EC2实例基本持平。

HomeAdvisor家装服务

AWS IoT 服务 --> Lambda --> HomeAdvisor API --> customer

用 Python 写 Lambda 函数

Ref:尝试 AWS Lambda for Python

比较老的博文,目前的使用方式可以另起一篇。

End.

[AWS] Serverless & Lambda的更多相关文章

  1. [AWS] Serverless

    先来个热身 一整套方案,构建移动消息收发应用程序 (iOS) 要实现的目标: 使用 AWS Mobile Hub 为聊天应用程序配置移动云计算后端基础设施. 使用 Amazon Cognito 配置适 ...

  2. 【原创】aws s3 lambda缩略图生成

    参考资料: https://github.com/sagidm/s3-resizer https://aws.amazon.com/cn/blogs/compute/resize-images-on- ...

  3. AWS的lambda和S3之间如何连携

    今天正好遇到了这个问题,就在官方文档里查询,然后根据他的说明整理了一下大致的流程,详细的请参考AWS国际版的官方文档,这里只是作者的一个简单的流程展示. Lambda和S3连接 1.在S3的同一区域当 ...

  4. AWS Lambda 借助 Serverless Framework,迅速起飞

    前言 微服务架构有别于传统的单体式应用方案,我们可将单体应用拆分成多个核心功能.每个功能都被称为一项服务,可以单独构建和部署,这意味着各项服务在工作时不会互相影响 这种设计理念被进一步应用,就变成了无 ...

  5. AWS Step Function Serverless Applications

    Installing VS Components To follow along with this article, you must have an AWS account and install ...

  6. Automated EBS Snapshots using AWS Lambda & CloudWatch

    Overview In this post, we'll cover how to automate EBS snapshots for your AWS infrastructure using L ...

  7. AWS 15 年(1):从 Serverful 到 Serverless

    2006年,AWS发布了其第一个Serverless存储服务S3和第一个Serverful计算服务EC2,这也是AWS正式发布的前两个服务,开启了云计算波澜壮阔的旅程.2014年,AWS发布了业界第一 ...

  8. 【转】OpenStack和Docker、ServerLess能不能决定云计算胜负吗?

    还记得在十多年前,SaaS鼻祖SalesForce喊出的口号『No Software』吗?SalesForce在这个口号声中开创了SaaS行业,并成为当今市值460亿美元的SaaS之王.今天谈谈『No ...

  9. 代码世界中的Lambda

    “ λ ”像一个双手插兜儿,独自行走的人,有“失意.无奈.孤独”的感觉.λ 读作Lambda,是物理上的波长符号,放射学的衰变常数,线性代数中的特征值……在程序和代码的世界里,它代表了函数表达式,系统 ...

随机推荐

  1. JVM调优实战:G1中的to-space exhausted问题

    最近刚刚将自己的一个应用从CMS升级到G1,在一天早上,刚刚到办公室坐下,就收到手机一阵报警,去查看了监控,发现机器的内存出现了一个90度的涨幅,如下图所示: 在查看GC日志后,发现那个时间点附近出现 ...

  2. springboot中的外界jar的引入:

    <!-- 小米推送jar配置Start --> <dependency> <groupId>com.xiao.mi.push</groupId> < ...

  3. Git随身手册

    Git随身手册 本文是关于Git探索的一篇文章,阐述了Git的大部分命令和使用方式,并列举了几个典型的使用场景以供参考和体会. 对于Git这个分布式的VCS,从链表的角度来看待是最容易理解的: 一次c ...

  4. jq ajax传递json对象到服务端及contentType的用法

    目录 0.一般情况下,通过键值对的方式将参数传递到服务端 1.ajax 传递复杂json对象到服务端 2.content-Type 对asp.net mvc项目的重要性 0.一般情况下,通过键值对的方 ...

  5. macbook 安装redis流程及问题总结

    Mac安装redis流程和总结 一.redis安装流程: 1.进入redis官网-->点击download-->选择稳定版本(stable)-->点击Download即可. 2.将下 ...

  6. JSON转换方法解析

    JSON.parse() 与 JSON.stringify() 的区别 JSON.parse() :是从一个字符串中解析出 json 对象 JSON.stringify():是从一个对象中解析出字符串 ...

  7. HibernateSynchronizer的安装与使用

    HibernateSynchronizer的作用是自动生成hibernate配置文件,即hibernate.cfg.xml文件,映射文件,Plain Object类文件和一些基础数据库操作文件. 安装 ...

  8. Collection集合与Map集合的知识点梳理

    在Java中集合分为单列集合(Collection)与双列集合(Map),本文主要对两种集合的常用实现类作一介绍,如果有不足,恳请指教更正. 1.前言 说到集合肯定要介绍下集合的概念与特点:集合是一个 ...

  9. 大型互联网公司分布式ID方案总结

    ID是数据的唯一标识,传统的做法是利用UUID和数据库的自增ID,在互联网企业中,大部分公司使用的都是Mysql,并且因为需要事务支持,所以通常会使用Innodb存储引擎,UUID太长以及无序,所以并 ...

  10. Java发送邮件必带超时时间配置

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 在线上遇到了一个发送邮件的问题,记录一下. 一.先说 ...