0

В настоящее время на Rails 4 с Resque.Rails Фоновое задание для создания записей?

Мой вопрос:, было бы целесообразно использовать фоновое задание для создания записи? Что-то вроде ...

def create 
    @article = Article.new(articles_params) 
    if @article.valid? 
     background_job_here 
    else 
     render 'new' 
    end 
end 

только другая документация, я могу найти по этому вопросу говорит, что это не имеет смысла делать это, однако, не объясняет, почему.

Чтение документации Heroku позволяет предположить, что любой запрос, принимающий более 500 мс, будет удален в фоновом режиме. Создание статьи на моем сайте не является исключением, так как оно может занимать до 1000 мс. Если не фоновая работа, как мне ее создать? Спасибо!

ответ

1

По моему скромному мнению, я бы не использовал фоновое задание для всего, на что пользователь ожидает ответа. Я думаю, что это нарушит цикл запроса/ответа. Например, в вашем случае пользователь ожидает ответа на запрос о создании своей статьи. Однако совершенно нормально создавать запись в фоновом задании, если она не является обязательной для ответа. Например, у меня есть фоновые задания для создания других записей, которые не запрашиваются пользователем, но используются для аналитики действий пользователя. Теперь это определенно проблема, что для создания статьи требуется 500 мс до 1000 мс. Это проблема производительности, что фоновая работа на самом деле не обращается в любом случае. Я не знаю, каковы особенности вашего приложения, но вы можете захотеть изучить кеширование своей базы данных (например, redis).

Смежные вопросы