当前位置: 首页 > 知识库问答 >
问题:

AWS批处理作业在计算环境中启动时间过长,最小vCPUs=0

何晗昱
2023-03-14

我正在使用AWS Batch。提交作业后,我等待10-15分钟,直到我的作业获得运行状态。我的计算环境配置是下一个:

配置模型:EC2实例类型:m4。xlarge公司

最小vCPU:0
所需vCPU:0
最大vCPU:4

ECR图像大小约为130 MB。

我理解Min vCPUs=0的问题。启动ECS实例需要一些时间。但为什么这么久??为了加快我的作业的运行速度,我运行了虚拟作业,它可以长时间维护ECS实例处于运行状态。在那之后,我的工作很快就开始了。

共有1个答案

皇甫繁
2023-03-14

我认为这有点晚了,但以下线程可能会帮助其他人:

在这里,您可以找到有关开始执行作业的时间以及批处理没有像预期的那样快速安排作业的原因的解释:
https://forums.aws.amazon.com/thread.jspa?messageID=897734


在这里,您可以找到一个线程,其中包含用户遇到的问题和提出的一些解决方案:
https://www.reddit.com/r/aws/comments/amg7yk/is_there_an_opensource_alternative_to_aws_batch/


您可以在这里找到配置vCPU值的建议方法:
https://forums.aws.amazon.com/thread.jspa?threadID=265573

 类似资料:
  • 我正在应用程序上启动一个spring批处理作业,开始使用 spring.batch.job.names工作 不幸的是,这以某种方式延迟了tomcat服务器的启动。作业的运行时间为几分钟,因此我得到以下错误: localhost上的Tomcat v8.0服务器无法在45秒内启动。如果服务器需要更多时间,请尝试在服务器编辑器中增加超时。 问题:如何在不阻止tomcat启动的情况下运行此作业?例如异步运

  • 我有一个spring批处理作业,从CSV文件读取并写入数据库。我想让它重新启动。例如,如果在读取文件或写入db时出现异常,导致作业失败,则应从失败的同一点/块重新开始,而不是从头开始读取整个文件。 我正在从一个endpoint触发作业启动器,并在我的控制器中配置了它。 目前,我正在通过控制器将参数(这是一个唯一的标识符/数字)传递给作业参数,以运行新的作业实例。如果作业失败,我将使用与GET请求中

  • 我开发了spring批处理作业,它从JDBC获取数据。我面临的问题是,它在项目启动时执行,而不管启用了什么属性。属性的值为FALSE。我试图在属性上创建一个条件bean,但它也不起作用,作业正在项目启动时执行。 遵循我的代码段。 我还试图对计划的注释进行注释,但它仍在执行作业和步骤。 //@调度(固定延迟=15000)公共无效调度ByFixed费率()抛出异常{ } 有人能告诉我这里缺少什么吗?以

  • 下面的spring批处理作业带有一个分区步骤,它为一个分区步骤创建3600个分区。我使用的ThreadPoolTaskExecutor的最大池大小为100,队列容量为100(尽管这似乎对速度没有什么影响)。Im使用Visual VM监视线程,我注意到taskExecutor线程在启动作业后超过5分钟才启动。 奇怪的是,如果我将分区的数量限制为100,那么线程启动得相当快,大约在一分钟内完成。 我注

  • 是否可以配置Spring批处理管理员来启动主作业和从作业。我们有一个进程作为主节点和3-4个从节点。 Spring batch admin在单独的JVM进程中运行,但所有Spring批处理作业都使用相同的批处理数据库模式。