2012-01-30 14 views
5

Mam problem z przekroczeniem limitu czasu po kliknięciu łącza Export to Excel w mojej aplikacji ze względu na duże transakcje db. Chcę zmienić tę funkcjonalność na tło, aby użytkownik mógł przejść do przodu podczas pracy w tle. Chcę, gdy użytkownik kliknie na Export to Excel proces łączenia łącza/wątku nowego wątku i do użytkownika zostanie wysłana wiadomość e-mail z łączem umożliwiającym pobranie pliku. Chcę wiedzieć, który jest najlepszy sposób, aby to osiągnąć Tworzenie nowego wątku lub procesu w tle?Szyny Tworzenie nowego wątku lub procesu w tle

Dzięki z gory

Odpowiedz

0

Istnieją trzy rodzaje kolejki wiadomości,

  1. Brak kolejek - zostanie uruchomiony nowy wątek/proces dla zadania w tle, np .: spawn
  2. Baza danych sterowana - odpowiednie zadanie zostanie zapisane w tabeli w bazie danych i zostanie automatycznie usunięte po zakończeniu, np .: backgroundrb, opóźnione zadanie
  3. wiadomości kolejek - Przechowywane zlecenia w pamięci, np: szpak

nie używałem Resque, ale słyszałem, że to jest trochę skomplikowane, aby skonfigurować. Oprócz wykonywania zadań w tle, jeśli chcesz wykonywać powtarzalne czynności w regularnych odstępach czasu, możesz przejść do backgroundrb. W przeciwnym razie opóźnione zadanie będzie właściwym wyborem.

Powiązane problemy