事件驱动与编排如何助力完整 Serverless 应用?
目前,在很多的人的第一印象中,一般将 FaaS,也就是 Fucntion as a Service (函数即服务)等同于 Serverless, 比如阿里云的函数计算、AWS 的 Lambda,但是 实际上有许多其他的云服务也是 Serverless,他们和 FC 一起构建成完整的 Serverless 应用,让用户完全聚焦他最上层和核心的原始业务。比如,用户直接使用 API 网关, 就 可以从 API 限流、鉴权等许多 API 层面上需要考虑的繁杂工作中解放出来;直接使用 Serverless 的 NoSQL 数据库 TableStore 或者对象存储 OSS 来持久化数据,替代 自己管理数据库实例;使用 SLS 或者 Datahub 从外部系统收集数据流;使用消息服务 MNS/MQ 来管理消息等。 用户可以使用一个个函数将这些 Serverless 服务串联起来,从而达到构建具体复杂 的业务逻辑和应用的目标。在这里,用户也可以选择 Serverless 工作流来编排函数和其 他云服务,简化了开发和运行业务流程(比如自己去编写代码进行任务协调、状态管理、错 误处理以及重试等繁琐工作),让用户聚焦业务逻辑开发。当然,用户也可以使用阿里云提 供的开发工具链来简化自动化部署和持续集成。使用这些开箱即可使用的工具可以帮助用户 快速达到想要的目标和效果。 如果是一个庞大复杂的单体应用或者是一个面向服务体系的架构,开发者需要负责所有 的事情,包括代码的编写、管理和部署数据库以及其他相关的后端服务等,切换到 Servrless 架构, 可以看到:特定的的模块交由特定的托管云服务去处理, 之后再使用 实现了具体业务代码的函数将它们串联起来, 也实现了解耦。 为了使这种架构运转的更有 效率, 事件驱动是一个必不可少的特性, 比如用户尝试往 OSS 上传一个文件或者更新 表格存储会自动做一些逻辑处理,对于开发者来说, 最关心的是什么样的事件可以触发我 的编写逻辑。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。