最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

在Fargate中运行的Node web app在负载和CPU相对免税的情况下崩溃

IT培训 admin 4浏览 0评论

在Fargate中运行的Node web app在负载和CPU相对免税的情况下崩溃

我们正在5个Fargate容器中运行Koa网络应用。它们是与Mona Atlas一起使用Koa的非常简单的原始/ REST API。我们开始进行容量测试,并注意到节点服务器开始显着降低速度,因为CPU(坐定为30%),内存(坐定为20%或低于20%)和Mongo(仍在<10ms内返回)留有足够的空间。 。为了进一步测试这一点,我们删除了Mongo操作,并重新敲定了健康检查端点。我们确实看到了很多吞吐量,但是在25%的CPU上发生了显着的降级,而在40%的CPU上Node实际上崩溃了。

我们的Fargate任务(容器)是CPU:2048(2个“虚拟CPU”)和4096(内存)(4个演出)。我们将ulimit nofile提升到64000,还将max-old-space-size设置为3.5 GB。这并没有造成显着差异。

我们在负载均衡器中也没有看到明显的延迟。

我的期望是在系统开始出现问题之前,CPU或内存将攀升得多。有什么想法可能存在瓶颈吗?

我们正在5个Fargate容器中运行Koa网络应用。它们是与Mona Atlas一起使用Koa的非常简单的原始/ REST API。我们开始进行容量测试,并注意到节点服务器...

回答如下:

这里的主要问题是我们正在运行带有2个CPU的容器。由于Node仅有效使用1个CPU,因此总是有一定数量的CPU分配从未使用过。辅助开销从未使容器达到100%。因此,节点在其1个cpu上将不堪重负,而另一个节点基本上处于空闲状态。这导致我们的自动缩放警报永远不会触发。因此,将其调整为1个cpu容器,并具有更多水平扩展(即更多实例)。

在Fargate中运行的Node web app在负载和CPU相对免税的情况下崩溃

我们正在5个Fargate容器中运行Koa网络应用。它们是与Mona Atlas一起使用Koa的非常简单的原始/ REST API。我们开始进行容量测试,并注意到节点服务器开始显着降低速度,因为CPU(坐定为30%),内存(坐定为20%或低于20%)和Mongo(仍在<10ms内返回)留有足够的空间。 。为了进一步测试这一点,我们删除了Mongo操作,并重新敲定了健康检查端点。我们确实看到了很多吞吐量,但是在25%的CPU上发生了显着的降级,而在40%的CPU上Node实际上崩溃了。

我们的Fargate任务(容器)是CPU:2048(2个“虚拟CPU”)和4096(内存)(4个演出)。我们将ulimit nofile提升到64000,还将max-old-space-size设置为3.5 GB。这并没有造成显着差异。

我们在负载均衡器中也没有看到明显的延迟。

我的期望是在系统开始出现问题之前,CPU或内存将攀升得多。有什么想法可能存在瓶颈吗?

我们正在5个Fargate容器中运行Koa网络应用。它们是与Mona Atlas一起使用Koa的非常简单的原始/ REST API。我们开始进行容量测试,并注意到节点服务器...

回答如下:

这里的主要问题是我们正在运行带有2个CPU的容器。由于Node仅有效使用1个CPU,因此总是有一定数量的CPU分配从未使用过。辅助开销从未使容器达到100%。因此,节点在其1个cpu上将不堪重负,而另一个节点基本上处于空闲状态。这导致我们的自动缩放警报永远不会触发。因此,将其调整为1个cpu容器,并具有更多水平扩展(即更多实例)。

发布评论

评论列表 (0)

  1. 暂无评论