亚马逊AWS的Serverless架构

标签: 亚马逊awsserverless微服务架构
1658人阅读 评论(0) 收藏 举报
分类:

亚马逊AWS的Serverless架构

作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs

Serverless平台允许运行应用程序,包括计算、存储和网络——无需启动和管理单个(虚拟)机器。本文主要介绍AWS上的Serverless架构,包括Lambda、API Gateway、DynamoDB、S3等。Serverless架构模式也可以转移到其他云平台实施。

能够专注于软件开发而不是操作一组服务器是Serverless的主要驱动力。或者正如Amazon.com首席技术官Werner Vogels所说:“没有服务器比不管理服务器更容易管理。”Serverless基础设施的另一个重要方面是细粒度的计费和极高的可扩展性。为了给你一个典型用例的印象,这里列举了一些Serverless应用程序:

  • 在高负载场景使用REST API从Web应用程序收集指标
  • 从传入的包含订单和状态信息的电子邮件中提取和存储数据
  • 创建提供标准后端CRUD操作的REST API
  • 在大数据场景的ETL过程中收集和转换数据
  • 分析来自实时数据流的日志消息
  • 构建一个在后台可以与多个API交互的聊天机器人chatbot

限制

在高可用性和高可扩展性的基础设施上执行源代码的能力是每个Serverless平台的核心。例如,AWS Lambda允许运行源代码以响应事件。AWS提供了计算基础设施和针对JavaScript(Node.js)、Java、Python或.NET Core(C#)等编程语言的运行时环境。典型的Serverless应用程序由多个函数组成。在AWS Lambda上,每个函数执行的超时时间为5分钟。但可以通过高度并行的方式执行相同或不同的函数。

遵循Serverless方法时,需要将应用程序划分为多个小功能。利用微服务架构可以帮助实现这个功能划分的目标。Serverless最适合事件驱动的架构。当编排多个Serverless函数来构建一个系统时,事件是触发Serverless函数的源。

基于以下事件可以触发一个AWS Lambda的函数:

  • 传入HTTPS请求
  • 更改存储在数据库或对象存储中的数据
  • 传入邮件(例如电子邮件)
  • 将任务发布到主题或实时数据流
  • 计划事件(与cronjob相似)
1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5424873次
    • 积分:49857
    • 等级:
    • 排名:第65名
    • 原创:781篇
    • 转载:23篇
    • 译文:24篇
    • 评论:1156条
    一名路过的黑客

    大家好,我是黑客,专门盗账号的。现在这个人的帐号被我盗了,但看这个人平时的博客空间,一直过着艰苦努力、持之以恒的技术研究生活,勤奋刻苦,积极分享,无私奉献,我被深深的感动了,这是一个纯粹的人,人品这样的高尚,希望大家看到我这条消息后,可以私聊他,多鼓励他,不缺钱的就多给他一些经济上的资助,让他再接再厉!就这样吧,我下线了,眼框湿湿的难受。

    文章存档