速来报名!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:002525
用户头像

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

关注

评论

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

AntDB数据库受邀参加第六届上海人工智能大会,分享AIGC时代核心交易系统升级方案

亚信AntDB数据库

AntDB AntDB数据库 企业号 5 月 PK 榜

GaussDB(DWS)网络流控与管控效果

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

xcode打包导出ipa

雪奈椰子

青年大学习自动核对名单详细教程【Python版】

BROKEN

三周年连更

2 种方式在流水线中集成 DAST,动态保护应用程序安全

极狐GitLab

DevOps DevSecOps 安全左移 DAST 安全扫描

腾讯高工手写13W字“Netty速成手册”,3天走向实战!

程序知音

Java Netty java架构 Java进阶 后端技术

企事业单位通用版招采系统(SRM),招采全过程闭环流程

金陵老街

ios APP开发测试教程

雪奈椰子

基于ArkUI框架开发——图片模糊处理的实现

OpenHarmony开发者

Open Harmony

线上FullGC问题排查实践——手把手教你排查线上问题 | 京东云技术团队

京东科技开发者

GC fullstack 企业号 5 月 PK 榜 CPU告警

苹果电脑删除磁盘分区及双系统分区的办法

互联网搬砖工作者

全球连接器市场规模稳健增长,我国已成为全球最大的消费市场

华秋电子

Java:如何加密或解密PDF文档?

在下毛毛雨

Java 加密 PowerPoint 解密

绘画手残党的福音:涂鸦线稿秒变绝美图像

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 5 月 PK 榜

系统日志规范及最佳实践

阿里技术

日志

读懂海尔智家大脑:深度体验的本质是深度生活

脑极体

智慧家居 全屋智能

袋鼠云“飞跃计划2.0”重磅发布:全面升级伙伴权益,共话数字生态

袋鼠云数栈

大数据 数字化转型 生态伙伴

用友YonLinker连接集成平台构建新一代产业互联根基

用友BIP

3D设计有哪些流程?(附自学教程)

Finovy Cloud

blender 3D软件 ZBrush

独家合作:百度飞桨AI4S最新成果亮相香港力学盛会,PINN方法获得沪港众学者关注

飞桨PaddlePaddle

狂砍千万行代码,零故障!去哪儿网系统瘦身技术揭秘

Qunar技术沙龙

去哪儿网 系统瘦身

倒计时24天!接棒香港展,CTIS2023观众预登记全面启动

科技热闻

iOS MachineLearning 系列(11)—— 自然语言识别与文本分析

珲少

Final Cut Pro打开时卡在“正在验证音频单元...”

互联网搬砖工作者

关于低代码开发,你是真的了解了吗?

加入高科技仿生人

低代码 数字化 数字转型 数智转型

基于Java的ES全文检索,Neo4J,activiti审批流的知识库管理系统

金陵老街

Java Vue ES

定档5.14 | 2023宿迁市网络安全大会暨第三届LINKUP+网络安全峰会开放报名中!

权说安全

App Uploader激活码获取

雪奈椰子

架构师日记-深入理解软件设计模式 | 京东云技术团队

京东科技开发者

架构 设计模式 架构模式 编程语言、 企业号 5 月 PK 榜

PUT和POST的区别

Apifox

程序员 前端 后端 post put

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