与端点通信的网络错误。限制 CPU 使用
Network error communicating with endpoint. Limiting CPU usage
我在 EC2 AWS 实例上有一个 FastAPI 运行。我的端点运行良好,但我在使用一个端点同时处理请求 运行 时遇到问题。
这个端点大约需要 10 秒才能完成,并且使用了很多 cpu(它是关于神经网络过程的)。我有 运行 多达 5 个同时调用此端点且没有错误,并且所有任务都在 10 秒左右完成。但是,如果我进行第六次,系统就会开始出现故障。我开始获得两个错误:
"Network error communicating with endpoint"
"Endpoint request timed out"
然后,EC2 实例甚至无法通过 ssh 访问,尽管它在 EC2 面板中说它是“可用的”。关于如何解决这个问题的任何想法?也许 API 将 CPU 功率限制在 90%?
为了与此 EC2 实例通信,我通过 API 网关发送信息。没有比我更多的连接,因为我是唯一访问它的人。
注意: 如果我做 top 我看到 5 个调用 CPU 大约是 380%(它有 4 个 cpu),但是 ram上升到 83%。我想这是我的 RAM 使用问题?
感谢您的评论。我发现我与 torch 一起使用的模型正在内存中保存梯度,所以我不得不 运行 它与:
with torch.no_grad():
如果您有兴趣,可以在 . You can also look at the size of the variables using 之后了解并限制您的 python 应用程序的 RAM。但是,我只能注意到第一个 link.
内存泄漏
RAM 稳定后,我无法得到更多这些错误,尽管由于 CPU 工作量,现在是创建队列的时候了...
我在 EC2 AWS 实例上有一个 FastAPI 运行。我的端点运行良好,但我在使用一个端点同时处理请求 运行 时遇到问题。
这个端点大约需要 10 秒才能完成,并且使用了很多 cpu(它是关于神经网络过程的)。我有 运行 多达 5 个同时调用此端点且没有错误,并且所有任务都在 10 秒左右完成。但是,如果我进行第六次,系统就会开始出现故障。我开始获得两个错误:
"Network error communicating with endpoint"
"Endpoint request timed out"
然后,EC2 实例甚至无法通过 ssh 访问,尽管它在 EC2 面板中说它是“可用的”。关于如何解决这个问题的任何想法?也许 API 将 CPU 功率限制在 90%?
为了与此 EC2 实例通信,我通过 API 网关发送信息。没有比我更多的连接,因为我是唯一访问它的人。
注意: 如果我做 top 我看到 5 个调用 CPU 大约是 380%(它有 4 个 cpu),但是 ram上升到 83%。我想这是我的 RAM 使用问题?
感谢您的评论。我发现我与 torch 一起使用的模型正在内存中保存梯度,所以我不得不 运行 它与:
with torch.no_grad():
如果您有兴趣,可以在
RAM 稳定后,我无法得到更多这些错误,尽管由于 CPU 工作量,现在是创建队列的时候了...