Amazon web services 按需扩展ec2,lambda风格

Amazon web services 按需扩展ec2,lambda风格,amazon-web-services,amazon-ec2,aws-api-gateway,amazon-ecs,Amazon Web Services,Amazon Ec2,Aws Api Gateway,Amazon Ecs,我是AWS的新手,完全迷路了。我正在失去希望 我想做的似乎很简单,但我找不到任何清晰的简化文档。 我想让我当前的web服务器使用http请求调用一些API,并从API中返回一些值。要返回的值由一些Python脚本计算。 现在lambda将完成这项工作,但由于计算需求(需要16个内核),我需要在EC2上运行它。 除此之外,这还需要扩展:在具有16个内核的不同机器上处理每个api请求。如果我有100个电话,我应该让100个EC2并行运行。 当没有API调用时,我应该运行0 EC2并收取0.00美元的

我是AWS的新手,完全迷路了。我正在失去希望

我想做的似乎很简单,但我找不到任何清晰的简化文档。 我想让我当前的web服务器使用http请求调用一些API,并从API中返回一些值。要返回的值由一些Python脚本计算。 现在lambda将完成这项工作,但由于计算需求(需要16个内核),我需要在EC2上运行它。 除此之外,这还需要扩展:在具有16个内核的不同机器上处理每个api请求。如果我有100个电话,我应该让100个EC2并行运行。 当没有API调用时,我应该运行0 EC2并收取0.00美元的费用

通常,对于给定的会话,在大约10分钟的时间内会有几个呼叫,这些呼叫应该很快得到应答。我想的是可能会有一个特殊的第一次呼叫,启动EC2 20分钟。因此,第一个电话可能需要20秒,但随后的电话应该很快得到接听

Summary of what I need AWS to do:
 - Receive "start" API Call (Amazon API Gateway ?)
 - Start an EC2 specifically for that session for 20 mins
 - Return EC2 address (?)
 - Call script on EC2 through http requests
 - Stop EC2 after 20 mins or after the last call
要为此设置和配置哪些服务

如果需要,我可以用脚本创建docker图像。(实际上还有别的办法吗?)

可能吗?怎么做

非常感谢


编辑:修改了一点问题以反映时间限制。

在我看来,您应该查看AWS批处理。这允许您运行一批作业,您可以使用具有更多vCPU的机器,并从每秒计费中获益


您的API托管在哪里?处理一个API需要多长时间(例如5秒或5分钟)?API处理请求的速度有多快(例如,它可以等待20秒、2分钟或20分钟)?您是否考虑将请求发送到队列和可用的机器,以在容量可用时处理消息,而不是等待“响应”API?每台机器只能处理一个请求(使用所有16个内核),还是一台机器可以同时处理多个请求?请随意编辑您的问题和这些细节。谢谢,我编辑问题是为了反映时间限制。在会话开始时,我可以等待一段时间来启动EC2 20分钟。但随后的呼叫应该几乎立即得到应答。免责声明:我是该会话的创建者,根据实时传入的请求启动和停止EC2实例,这正是您描述工作流的方式。它将在第一个传入请求时启动您的实例,然后在给定时间段内没有收到新请求时停止它。