把握行业变革关键节点,12 月 19 日 - 20 日,AICon北京站即将重磅启幕! 了解详情
写点什么

Autodesk 无服务器微服务架构样例

  • 2016-08-23
  • 本文字数:1049 字

    阅读完需:约 3 分钟

在题为“什么比微服务更好?无服务器微服务”的网络直播中,Alan Williams(Autodesk)、Asha Chakrabarty(Amazon)和 Alan Ho(Apigee)讨论了一个无服务器微服务的架构。其中,该微服务的构建使用了 AWS lambda 函数和运行在 AWS 上的 Apigee 端点。

据 Chakrabarty 介绍,无服务器是一种相对比较新的架构风格,其中的计算单元不是虚拟机,而是一个封装了待执行代码(事件触发)的函数。Williams 指出,无状态计算模型的主要特点是:“代码为主(code focused)”、没有需要管理的服务器、没有需要配置和管理的 EC2 实例、无需人工扩展、没有空闲资源、没有 SSH 或 RDP。

下图简单地描述了一个由 Autodesk 实现的无服务器微服务的架构(点击查看大图):

该微服务有多个入口点作为 HTTP 端点(由 Apigee 管理)暴露。用户发起一个 HTTP 调用,并不知道其请求会由一个无服务器微服务提供服务。该服务由多个 Python 编写的 lambda 函数组成,这些函数之间通过 AWS SNS 异步通知进行通信。Lambda 函数是相互独立的,可以使用不同的语言开发,可以由不同的团队维护。

由于 lambda 不是短期的,所以它们需要将状态在某个地方持久化,其中一个选择是使用 DynamoDB 表。这些表的访问通过 IAM 角色控制,并且仅限于那些需要对它们进行读 / 写访问的函数。这可以避免将不需要的数据暴露给某个 lambda 函数,如果存在安全漏洞的话,这还可以缩小微服务的攻击面。Autodesk 之所以选择使用 DynamoDB 存储状态,是因为它简单,可以将数据作为 JSON 传递,不需要管理一个服务器实例,并且支持自动向上扩展。

上图底部的 DynamoDB 表(talr-taskstatus)将来自多个 lambda 函数的状态持久化,并在表被修改时产生流式事件。这些事件由另一个 lambda 函数监控(talr-validator),它会在必要时采取行动。

对于在 AWS 上实现一个无服务器架构,Williams 列举了如下好处。

  • 敏捷性:只需数周就可以实现。
  • 不需要管理基础设施,无需 EC2 或 ELB 实例,不需要打安全补丁。
  • 开发人员只需专注于他们编写的代码。
  • 通过无服务器框架管理代码的能力。
  • 成本。根据他们的经验,运行 lambda 解决方案的成本只是传统云解决方案的一小部分(约 1%)。由于不需要雇佣运维人员配置和监控 EC2 和 ELB 实例,所以成本还会进一步降低。

Williams 还提到,无服务器架构不适合运行长期工作负载或者第三方应用程序。在那些情况下,他认为容器更合适。

本次直播还展示了如何在 AWS 上通过无服务器框架组织代码、部署和运行演示程序。

查看英文原文: A Sample Serverless Microservice Architecture from Autodesk

2016-08-23 19:003021
用户头像

发布了 1008 篇内容, 共 445.4 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

好运转购物商城

飞亚科技

StreamX: 流批一体大数据平台正式开源

ApacheStreamPark

模块 1 作业

流水亮

Rust:关于闭包的一点研究

Microwood

rust 闭包 closure

跟着源码学IM(八):万字长文,手把手教你用Netty打造IM聊天

JackJiang

Netty 即时通讯 IM

OSI七层模型

赖猫

TCP 后台开发 后端 网络编程 网络协议

课程完结有感

Kalman

产品经理 产品经理训练营

Java入门第一课

ベ布小禅

4月日更

如何横扫大厂Offer?这份“1000道Java后端面试速成笔记”程序员(银四)必备

比伯

Java 程序员 程序人生 软件架构 java编程

绝了!阿里面试官跟我死磕MySQL,结果我却拿了个高薪offer

码农之家

Java 程序员 面试 MySQL 高可用 刷题笔记

二阶单位圆

山@支

逐行解读Spring- 没人比我更懂循环依赖

学Java关注我

Java 编程 架构 编程语言 技术宅

情指勤指挥调度平台搭建,公安重点人员管控平台搭建

想靠接私活月入5W?建议根据这几个开源的SpringBoot项目(含小程序)模仿一下~

Java架构师迁哥

Vue cli项目 修改运行命令和端口号

空城机

Vue 大前端 4月日更 vue cli

年度盛会 | Atlassian Team 2021 全球大会重磅嘉宾介绍

Atlassian

Agile Zoom Atlassian Slack

Redis-Sentinel 深入浅出原理和实战

leonsh

redis redis sentinel

手机自带的多功能百宝箱,没人用真的太可惜了。

彭宏豪95

iphone 效率 工具 苹果 4月日更

TimSort — 以人命名的排序法

D

数据中台在企业数字化转型中的践行(上篇)

EAWorld

更揽群碑荟一堂|靠谱点评

无量靠谱

数据中台在企业数字化转型中的践行(下篇)

EAWorld

「 人气作者 TOP10 公布 」—— InfoQ 写作平台【 1 周年盛典 】

InfoQ写作社区官方

1 周年盛典 热门活动

实时 OLAP, 从 0 到 1

Apache Flink

flink OLAP 区块链技术

融云音视频产品免费 20 万分钟 助力通信场景全搭建

融云 RongCloud

快速定制OCR识别模型好帮手:百度EasyDL OCR自训练平台上线啦!

百度大脑

EasyDL-OCR

架构训练营作业-模块二

西伯利亚鼯鼠

Nginx源码编译安装与运行

马里奥

nginx 安装 笔记

字节三面:对于Spring你了解多少?如果你会了这150道题 ,吊打面试官岂不是洒洒水?

北游学Java

Java spring Spring Framework spring Boot Starter spring cloud alibaba

身份和访问管理标准及挑战

龙归科技

物联网 云服务 认证授权 身份和访问管理

深度图解Redis Cluster原理

leonsh

redis Gossip redis cluster

Autodesk无服务器微服务架构样例_架构_Abel Avram_InfoQ精选文章