sig*_*ur7 8 javascript amazon-web-services google-cloud-platform aws-lambda google-cloud-functions
我们正在使用NodeJS通过Google Speech-to-Text API处理较长的成绩单。许多功能需要10分钟以上的时间来处理。处理/音频时间的通常比例约为50%。因此,一个20分钟的FLAC音频文件需要大约10分钟的处理时间(因此,在Google Cloud Functions上失败,最大时间为540秒或9分钟),而超过29分钟的任何时间在AWS Lambda上都会失败。
每个平台上有哪些服务可以在20/30分钟内处理音频文件,还可以发送事件数据并调用应用程序?我可以混合使用云功能和其他平台来处理成绩单吗?
除了 AWS 之外,我不知道还有其他云提供商,因此我将根据 AWS 来回答。我总是尽可能使用 AWS Lambda,除非运行时间超过 15 分钟。在本例中,我使用AWS Batch ( AWS Batch \xe2\x80\x93 在 AWS 上运行批量计算作业)。
\n\n您还可以使用AWS Fargate,但您必须配置集群和 docker 映像。
\n\n编辑1:
\n\n\n\n\n我想,可以通过 API Gateway 批量发送事件,就像发送到 Lambda 一样?
\n
我从未直接通过 API Gateway 触发过批处理作业(我不知道这是否可能)。我一直使用 API Gateway 来触发 Lambda 和 Lambda 触发器批处理(请查看此工作流程,以获得更好的想法)。
\n\n此外,您还可以使用 AWS CloudWatch 事件来触发 AWS Batch 作业。例如,如果您在转录之前将文件上传到 S3,则可能会通过 S3 事件触发 AWS Batch Job(请逐步查看此步骤)。
\n\n\n\n\n将压缩的 Lambda 函数转换为 AWS Fargate 映像有多简单?
\n
如果您了解 Docker、AWS ECR 和 ECS 集群,那么这并不困难。
\n\n首先,您需要使用源代码创建 Docker 映像。请逐步查看此内容。基本上,您将解压缩代码,复制到 docker 映像,运行npm install并运行 Dockerfile 中的命令。
之后,您可以创建一个 AWS ECR,在其中上传 Docker 映像。
创建AWS ECS集群
创建 AWS Fargate任务
最后,通过 Lambda 运行任务。
如果您没有 Docker 和 AWS Fargate 的经验,AWS Batch 更容易实施。
\n| 归档时间: |
|
| 查看次数: |
248 次 |
| 最近记录: |