为什么在无服务器python应用程序中使用zappa/chalice?

为什么在无服务器python应用程序中使用zappa/chalice?,python,python-3.x,aws-lambda,Python,Python 3.x,Aws Lambda,我是python新手,我认为在AWS基础设施上运行我的第一个python项目会很好。考虑到我以前使用lambdas的node.js经验,我认为每个函数都有自己的代码,应用程序只通过持久层粘合在一起,其他所有功能都是分离的 在Python Lambda中,有一些无服务器的微框架,如Chalice或Zappa,这似乎是一种公认的做法。但对我来说,这感觉就像是他们绕过了无服务器方法的概念。你仍然有一个完整的应用程序构建在Flask,甚至Django上,并且该应用程序是通过lambda提供的。仍然有一个

我是python新手,我认为在AWS基础设施上运行我的第一个python项目会很好。考虑到我以前使用lambdas的node.js经验,我认为每个函数都有自己的代码,应用程序只通过持久层粘合在一起,其他所有功能都是分离的

在Python Lambda中,有一些无服务器的微框架,如Chalice或Zappa,这似乎是一种公认的做法。但对我来说,这感觉就像是他们绕过了无服务器方法的概念。你仍然有一个完整的应用程序构建在Flask,甚至Django上,并且该应用程序是通过lambda提供的。仍然有一个应用程序拥有所有路由、配置、样板代码等,而不是只执行其工作的小型独立功能。我目前还不知道这样做会不会变得更容易

  • 与单个函数相比,通过lambdas提供整个代码库的好处/原因是什么
  • 如果在无服务器应用程序中使用flask/django/其他任何东西,是否会导致执行时间损失
  • 如果这取决于特定的项目,那么何时使用框架以及何时使用单个功能的指导是什么
  • 好处。您可以使用已知的概念,并在无服务器环境中采用它
  • 表演。代码越小,占用的内存就越少。它必须被加载、处理等等。只处理一个请求?对我来说,这太过分了
  • 假设您有diango项目,该项目正在研究elastic beanstalk,您需要一些LAMDA来处理有限的问题。现在。您想有两种不同的配置吗?通用函数呢
    无服务器看起来不错,但是。。。让我们假设你有权限,所以你的应用程序,对于每一个呼叫都会拉这些东西。也许你已经将其缓存在redis中,作为用户权限的一个洞。。。另一种选择是dynamodb,它甚至更贵。是的,有很好的SLA,但API很奇怪,而且如果您计划在那个里保留更多数据。。。你拥有的数据越多,它工作的速度就越慢——用同样的钱。换句话说,如果你想保持同样的速度,那么如果你放更多的数据,抓取的成本就会更高。

    我认为问题太广泛了。我同意,这不是关于实际的代码,而是关于生态系统。但我不知道该把它贴在哪里,也不知道该如何让问题更具体。我编辑了一点,希望现在看起来好一点