0
나는 한 번에 130MB 상당의 이미지가있는 게시물 요청을받는 매우 간단한 레일 응용 프로그램을 가지고 있습니다. 이러한 요청은 컨트롤러를 통해 처리됩니다. 컨트롤러는 단순히 메시지를 수신했다는 json 객체로 응답합니다. 그것은 내가하는 모든 일이다.이것은 레일 메모리 누출인가요?
나는이 앱을 영웅 취미 다이노에 배치했다. 내가 요청할 때마다 메모리 소비는 상당히 많이 올라갑니다. 종종 내 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
한 번에 하나의 이미지를 보내 보셨습니까? 전송할 때 이미지의 크기가 130MB라면 이미지를 나타내는 Ruby 객체로 인해 Ruby 응용 프로그램의 크기가 훨씬 커질 수 있습니다. – kcdragon
답장을 보내 주셔서 감사합니다.하지만 메모리를 공개하지 않는 이유는 아직 설명하지 못했습니다. 확실히 당신이 제안한 방법을 이미지를 보내는 것이 더 나은 접근법처럼 보입니다! –