AWS上的无服务器多层架构

描述

  我们之前关于 AWS 无服务器平台的文章讨论了该平台的基本原理和挑战以及简单的应用程序使用案例。在本文中,我们将介绍企业如何使用 AWS 云实施具有多层架构的无服务器应用程序。

  多层体系结构概述

  多层体系结构也称为 n 层体系结构。在这种体系结构中,应用程序在多个层中开发和分发。层数取决于业务需求,但三层体系结构是首选且最常用的。

  此三层体系结构包括表示层、逻辑层和数据层。

  用户直接与表示层交互。逻辑层包含将用户操作转换为应用程序行为的代码。数据层由保存与应用程序相关的数据的存储组成

  可以在整体式架构中使用数千台服务器来提高应用程序的性能。这种无服务器多层体系结构模式消除了服务器管理。

  以下是使用由 AWS 管理的无服务器服务的几个好处

  无需选择、修补或管理操作系统

  无需监控、横向扩展或保护服务器

  过度配置不会给基础架构带来风险

  配置不足不会给应用程序性能带来风险

  无服务器服务

  上述所有服务都会自动扩展,以支持应用程序的确切需求。

  无服务器架构

  表示层

  在上述架构中,静态内容托管在 Amazon S3 上,并由 Amazon CloudFront 分发。在 Amazon S3 上托管静态网站内容是在基于服务器的基础设施上托管内容的经济替代方法。此外,大量数据可以存储在 Amazon S3 中。Amazon CloudFront 是一个内容交付网络,用于缓存静态内容并提供动态和静态内容,以缩短网页加载时间并降低网络带宽成本。

  AWS CognitoUser 池是一个用户目录,为应用程序用户提供注册和登录选项。它还可以控制谁可以访问Amazon API Gateway中的API

  逻辑层

  对于动态内容,route-53 通过 AWS WAF 将请求发送到 API 网关,并从 API Gateway Lambda 函数触发并将数据存储在 Amazon S3 和 DynamoDB 或 AWS Aurora 中。

  将 Amazon 的 API Gateway 与 AWS Lambda 集成,使代码函数可以直接通过 HTTPS 请求触发。无论所需的请求量如何,API 网关和 Lambda 都会自动扩展。这两种服务允许专注于对应用程序重要的代码,而不是专注于实现多层体系结构的其他各个方面。

  对于网络隐私,AWS 能够在 Amazon VPC 中创建 lambda 函数

  AWS WAF 是一种 Web 应用程序防火墙,可以部署在 CloudFront 上,以保护应用程序免受 DDoS 攻击。WAF 通过定义安全规则来允许或阻止流量。Amazon Route 53 可以通过 AWS WAF 将用户的请求连接到 CloudFront 分配。

  AWS Glue 可以根据获取新数据集等事件运行 ETL(提取、转换和加载)作业。在上述架构中,一旦 Amazon S3 中有新数据(日志)可用,Glue 就会运行 ETL 作业,并且这些日志将被推送到 Amazon CloudWatch,并且可以从 Amazon CloudWatch 通过 Amazon SNS 发送通知。

  数据层

  根据应用程序场景,AWS Lambda 会将数据存储到 Amazon DynamoDB 或 AWS Aurora。

  Amazon DynamoDB 能够存储可无限扩展的 NoSQL 数据库,还提供预置和按需容量模式,以便通过指定每个工作负载的容量来优化成本。

  AWS Aurora 是 MySQL 和 PostgreSQL 兼容的完全托管关系数据库服务,专为传统企业数据库构建,该数据库需要开源数据库的性能和可用性以及成本效益。它能够根据应用程序的需求自动启动、关闭和扩展或缩减容量。对于不频繁或不可预测的工作负载,这是一种经济高效的解决方案

  Amazon Athena/Amazon Redshift Spectrum 使用 AWS Glue 作为存储和检索表元数据的中心位置。它具有分析非结构化、半结构化和结构化数据存储的能力。Athena 还可以生成报告,Amazon QuickSight 可以与 Athena 集成,以便轻松实现数据可视化

  根据最佳实践,所有服务都与 AWS IAM 角色相关联。在许多情况下,可以利用此 AWS 托管服务,而不是管理典型的基于服务器的基础设施。借助这种无服务器多层体系结构,可以轻松创建易于维护、解耦、安全、扩展且高度可用的生产应用程序组件。

  审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分