因为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. 纯数据结构Java实现(4/11)(BST)

    个人感觉,BST(二叉查找树)应该是众多常见树的爸爸,而不是弟弟,尽管相比较而言,它比较简单. 二叉树基础 理论定义,代码定义,满,完全等定义 不同于线性结构,树结构用于存储的话,通常操作效率更高.就 ...

  2. docker安装到基本使用

    记录docker概念,安装及入门日常使用 Docker安装(Linux / Debian) 查看官方文档,在Debian上安装Docker,其他平台在这里查阅,以下均在root用户下操作,省去sudo ...

  3. 使用BeanShell断言判断请求返回的Json相应结果(不同json格式整理)

    第一种json格式 { "code": 0, "msg": "success", "success": true, &q ...

  4. Spring-Boot:多种配置注入方式

    package com.example.el; import org.springframework.beans.factory.annotation.Value; import org.spring ...

  5. MongoDB 数据库的学习与使用

    MongoDB 数据库 一.MongoDB 简介(了解) ​ MongoDB 数据库是一种 NOSQL 数据库,NOSQL 数据库不是这几年才有的,从数据库的初期发展就以及存在了 NOSQL 数据库. ...

  6. C# - AutoMapper之不同类型的转换

    一.Dto & Model约定 class TestDto { public string Name { get; set; } public int Age { get; set; } pu ...

  7. coco标注信息与labelme标注信息的详解、相互转换及可视化

    引言 在做实例分割或语义分割的时候,我们通常要用labelme进行标注,labelme标注的json文件与coco数据集已经标注好的json文件的格式和内容有差异.如果要用coco数据集的信息,就要对 ...

  8. CentOS搭建php + nginx环境

    更新Centos的yum源 yum update 安装EPEL源和REMI源 yum install epel-release yum install http://rpms.remirepo.net ...

  9. CodeForces-38B-Chess枚举+思维

    CodeForces-38B-Chess 这是一道与下象棋有关的题目,题意是给你一个车和马的坐标,然后再给你一个马,让你判断最后三者都不会被吃掉的可能性,注意的是三者是三个独立的个体. 这道题要知道一 ...

  10. CodeForces 149E Martian Strings exkmp

    Martian Strings 题解: 对于询问串, 我们可以从前往后先跑一遍exkmp. 然后在倒过来,从后往前跑一遍exkmp. 我们就可以记录下 对于每个正向匹配来说,最左边的点在哪里. 对于每 ...