我有一个非常简单的rails应用程序,它一次收到一个包含130MB图像的帖子请求。这些请求是通过控制器处理的,控制器只是响应一个json对象说它收到了消息。这绝对是我所做的一切。
我将这个应用程序部署在heroku爱好dyno上。每当我提出请求时,内存消耗都会大大增加,通常会超出我的dyno的限制。
Image of the heroku metrics log
我希望在收到请求并“处理”之后内存恢复正常(特别是考虑到我甚至没有使用收到的内容)。
任何人都可以帮我弄清楚发生了什么事吗?
如果有帮助,这里是接收请求的控制器的代码片段:
class ImageUploadController < ApplicationController
def create
params["images"].each_with_index do |base64image, index|
# ImageUploadJob.perform_later(base64image, params["imageType"], params["profileID"], index)
end
params = nil
render :json => {'result': 'Image sent for upload'}, :status => :ok
end
答案 0 :(得分:0)
我明白了!事实证明我使用的Puma Web服务器导致了问题。我无法确定原因,但是当我切换到Passenger时,我的所有问题都消失了。