AWS 上的无服务器架构实施
server less architecture implementation on AWS
我正在浏览 AWS 上的无服务器架构文档和一些视频。
我知道我们可以使用 API 网关、Lambda、DynamoDB 实现无服务器,并将我们的前端放在 S3 存储桶上。
我对它在遗留 EC2 实例上的工作原理有一个简单的了解。
带有 reactjs.
的 .net 应用程序示例
例如,我们安装所有依赖项,如 .net sdk react ..ect
然后我们将源代码文件放在实例中,运行 相应的执行文件。 (对于 .net 它将是 .dll 文件)
现在的问题是:
这如何在无服务器上实现?
.dll 文件应该放在哪里?
所有依赖项应该安装在哪里?
建筑的外观如何?
这实际上取决于您的应用程序,S3 将仅提供静态 HTML,因此这完全取决于您的应用程序是否可以 运行 来自静态 HTML 文件的前端。
对于其中的动态部分,您将使用 API 网关(调用 Lambda 函数)来执行任何后端调用。这些将允许您的应用程序习惯的标准流程,但如果您的应用程序在前端和后端之间严重纠结,则需要大量重写。
Lambda 当前 only supports .Net Core so if you're using a legacy version I am not sure you'll be able to run this as a Lambda (you can use Lambda Layers 构建对受支持语言的支持,但据我所知,.Net 只能安装在 Windows)。
如果您真的希望 运行 您的应用程序在无服务器上不需要进行重大重写,我建议您考虑将您的应用程序迁移到 运行 作为容器,然后 运行 它使用 Fargate.
然后一旦启动并且 运行ning 启动 migrating/rewriting 后端以在 Lambda 上工作,您最终将能够将前端移至 S3,因为它与后端分离。
我正在浏览 AWS 上的无服务器架构文档和一些视频。
我知道我们可以使用 API 网关、Lambda、DynamoDB 实现无服务器,并将我们的前端放在 S3 存储桶上。
我对它在遗留 EC2 实例上的工作原理有一个简单的了解。
带有 reactjs.
例如,我们安装所有依赖项,如 .net sdk react ..ect 然后我们将源代码文件放在实例中,运行 相应的执行文件。 (对于 .net 它将是 .dll 文件)
现在的问题是: 这如何在无服务器上实现?
.dll 文件应该放在哪里?
所有依赖项应该安装在哪里?
建筑的外观如何?
这实际上取决于您的应用程序,S3 将仅提供静态 HTML,因此这完全取决于您的应用程序是否可以 运行 来自静态 HTML 文件的前端。
对于其中的动态部分,您将使用 API 网关(调用 Lambda 函数)来执行任何后端调用。这些将允许您的应用程序习惯的标准流程,但如果您的应用程序在前端和后端之间严重纠结,则需要大量重写。
Lambda 当前 only supports .Net Core so if you're using a legacy version I am not sure you'll be able to run this as a Lambda (you can use Lambda Layers 构建对受支持语言的支持,但据我所知,.Net 只能安装在 Windows)。
如果您真的希望 运行 您的应用程序在无服务器上不需要进行重大重写,我建议您考虑将您的应用程序迁移到 运行 作为容器,然后 运行 它使用 Fargate.
然后一旦启动并且 运行ning 启动 migrating/rewriting 后端以在 Lambda 上工作,您最终将能够将前端移至 S3,因为它与后端分离。