【问题标题】:Building a multi page serverless application using AWS Lambdas Serverless application model使用 AWS Lambdas 无服务器应用程序模型构建多页面无服务器应用程序
【发布时间】:2019-03-04 15:57:47
【问题描述】:

我是网络无服务器应用程序模型的新手,想了解一些事情。我浏览了 AWS 构建您的第一个无服务器教程,并且有几个问题。我习惯了 LEMP 的 MVC 模型或使用 .NET。

  1. 在本教程中,访问的所有页面都是静态 html,例如 app.com/login.html 和 app.com/ride.html。这是在无服务器世界中做事的方式吗?我知道 lamdba 和 rest api 添加了动态内容。
  2. 如何将浏览器中的页面命名为从 app.com/ride.html 改为 app.com/ride-to-london?
  3. Lamdba 本质上是不是就像写 Node.js 一样?
  4. 如果它们都是单独的 html 页面,是否有办法制作一个全局布局?任何布局模板建议都会有所帮助。
  5. 我想要一个多页面应用程序,比如这个网站与 Gmail(更少的 ajaxy),更像是一个博客。这是如何实现的?这方面的教程会很有帮助。

谢谢。

【问题讨论】:

    标签: amazon-web-services aws-lambda serverless-framework serverless aws-serverless


    【解决方案1】:

    1) 您可以使用 Angular、React、Vue 等现代前端框架,并在 S3 上静态托管您的网站。查看 Hosting a Static Website on Amazon S3 了解更多信息。然后,您的静态网站将通过 HTTP 与 API Gateway 进行交互。然后,您将 lambda 函数映射到来自 API Gateway 的事件。检查这个tutorial

    2) 取决于在步骤 1) 中选择的框架如何处理它

    3) 如果您愿意,它可以是 NodeJS、Go、Python 和其他支持的语言。每个微服务(lambda 函数)都可以用单独的语言编写。有关详细信息,请参阅支持的语言: Lambda FAQ

    4) 同样,取决于您选择的框架

    5) 这个你必须自己查找,但是任何类似“{Framework of Choice} 中的博客教程都应该这样做。这是使用 React 的example

    现在假设您已经部署了您的应用程序,然后您可以使用 AWS 支持的其他 Events。由于您正在创建博客示例,您可能希望将图片上传到您的帖子本身,以使其看起来很漂亮,但您不希望手机上的用户仅在浏览您的博客时加载这些高分辨率图片,所以您可以使用 S3 事件为您的图片生成缩略图,这样他们就可以在实际点击查看内容之前进行预览。无限可能。

    使用无服务器模型创建应用程序还可以构建开箱即用的事件驱动应用程序。默认情况下,这些应用程序高度可用且可自动扩展。

    【讨论】:

    • 采用无服务器方式并使用 Vue。
    • 关于第 1 点,我最近被问到为什么我们不通过 Lambda 提供静态内容。显然,我可以编写一个 lambda,它只需要一个 URL 并通过它,但这对我来说似乎......很奇怪,但它是一种使静态内容缩放的方法吗?
    • 这很好,@J.Gwinner。我建议你看看这个帖子,因为它很好地涵盖了你的问题:stackoverflow.com/questions/44376491/…
    猜你喜欢
    • 2019-05-28
    • 2018-06-03
    • 2019-02-18
    • 1970-01-01
    • 2017-10-01
    • 1970-01-01
    • 2018-05-24
    • 2019-02-13
    • 2019-09-23
    相关资源
    最近更新 更多