https://devcenter.heroku.com/articles/request-timeout
ドキュメントによると、30 秒とタイムアウト エラーが発生します。
CSV ファイルをアップロードして解析し、データベースに保存しています。これらのファイルの 1 つは、サイズが 1.7MB で、37000 行あります。
このプロセスの処理には少し時間がかかり、確かに 30 秒以上かかります。
これらの場合、どうすればよいですか?どのようなオプションがありますか?
require 'csv'
class DatabaseImporterController < ApplicationController
def index
end
def import
# Receive the uploaded CSV file and import to the database.
csv_file = params[:csv_file].tempfile
i = 0
CSV.foreach(csv_file) do |row|
# Structure for CSV file: Year, Make, Model, Trim
if i > 0 then
make = Make.find_or_create_by_name(row[1])
model = make.model.create(:year => row[0], :name => row[2], :trim => row[3])
end
i += 1
end
redirect_to :action => 'list'
end
def list
@models = Model.all
end
end