В моем приложении Heroku Rails происходит вздутие памяти при создании PrawnPDF. Я использую следующий код для каждого поколения.
С помощью:
Ruby 2.5.3
Креветка 2.2.2
Креветочный стол 0.2.2
pdf = InvoicePdf.new(hash)
send_data pdf.render, filename: "receipt_#{order_id}.pdf"
А в моем почтовике, как приложение:
pdf = InvoicePdf.new(hash)
t = Tempfile.create do |f|
pdf.render_file f
f.flush
File.read(f)
end
attachments["receipt.pdf"] = t if t
Код выше приведен здесь: Прикрепите prawn pdf к электронной почте
Оба эти метода вызывают переполнение памяти. Единственное решение, которое я видел, - это использовать AWS / cloudinary для хранения PDF. Я буду использовать PDF только два раза (и ни один не требует времени), так что это кажется пустой тратой. Есть идеи?
У меня нет проблем с мемом при загрузке.
Спасибо,
Guy