Я использую Impressionist, чтобы записывать показы страниц. Запись базы данных занимает всего около 50 мс, но я бы предпочел сделать это после того, как страница была отображена и отправлена клиенту.
Я искал forking через Spawn, но он устанавливает новое соединение с базой данных, которое, кажется, слишком велико для такого небольшого работа. Задержка работы и другие библиотеки обработки фонограмм кажутся серьезным излишеством. Запись в базу данных просто для отсрочки записи в базу данных... не выигрыш.
Хотел бы я просто:
def show
render
impressionist(@article)
end
... и импрессионист делает свою работу с тем же соединением с базой данных и всеми теми же данными запроса, что и действие, сразу после того, как действие уже вернулось клиенту. Но, конечно, не то, как работает метод рендеринга.
Любые решения? Running Rails 3.1 и Ruby 1.9.2 на кедрах Героку.