使用AWS Lambdas无服务器应用程序模型构建多页无服务器应用程序

时间:2019-03-04 06:19:16

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

我是Web的无服务器应用程序模型的新手,并且想了解几件事。我经历了AWS Building您的第一个无服务器教程,并且有几个问题。我已经习惯了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),更像一个博客。这是如何完成的?有关此的教程将是helfpul。

谢谢。

1 个答案:

答案 0 :(得分:1)

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

2)取决于步骤1)中选择的框架的处理方式

3)如果需要,它可以是NodeJS,Go,Python和其他受支持的语言。每个微服务(lambda函数)都可以用单独的语言编写。有关更多信息,请参阅以下支持的语言。 Lambda FAQ

4)再次取决于您选择的框架

5)您必须自己进行查找,但是诸如“ {Framework of Choice}中的Blog教程之类的东西都应该这样做。这是example在使用React

现在让我们说您已经部署了应用程序,然后可以利用AWS支持的其他Events。由于您正在创建Blog示例,因此您可能希望将图片上传到Post本身,这样看起来看起来不错,但是您不希望手机上的用户仅在浏览Blog时加载这些高分辨率图片,因此您可以利用S3事件为您的图片生成缩略图,以便他们可以在实际单击以查看内容之前进行预览。可能性是无限的。

使用无服务器模型创建应用程序还可以立即构建事件驱动的应用程序。这些应用程序具有高可用性,并且默认情况下可以自动缩放。