Chciałbym wykonać zadanie cron co 10 minut, ale mój system ma tylko godzinę. Więc szukam metody, aby to zrobić. Widziałem, Timer
i sleep
, ale nie jestem pewien, jak to zrobić, a jeszcze lepiej jeszcze zasobu do osiągnięcia tego.Jak sprawić, by Ruby uruchamiał jakieś zadanie co 10 minut?
Odpowiedz
Spójrz na http://rufus.rubyforge.org/rufus-scheduler/
rufus-scheduler to klejnot Ruby na kawałki planowania kodu (Praca). Rozumie wykonywanie pracy W OCZEKIWANIU pewnego czasu, W OCZEKIWANIU czasu, KAŻDEGO x czasu lub po prostu za pośrednictwem oświadczenia CRON. rufus-scheduler nie zastępuje cron/at, ponieważ działa wewnątrz Ruby.
wygląda na to, że może działać. Wrócę do tego. – s84
Nie użyłem tego sam, ale wziąłem kilka pomysłów z niego podczas tworzenia harmonogramu zadań z node.js. Kod wygląda dobrze i myślę, że będzie dla ciebie odpowiedni. Też: http://adam.heroku.com/past/2010/4/13/rethinking_cron/ – grm
widzę, że ten artykuł również wspomnieć: http://github.com/bvandenbos/resque-scheduler – grm
Aby to zrobić niezawodnie, zainwestuj w VPS i stwórz 10-minutową pracę crona według potrzeb. Próba naśladowania crona sama w sobie jest bardzo prawdopodobna w nieprzewidziany sposób.
Tworzenie procesu spania to nie jest sposób, aby to osiągnąć; Jeśli twój serwer nie daje ci wolności do tworzenia własnych cronów, jak ci się podoba, prawdopodobnie nie będziesz mógł stworzyć własnego procesu w tle dla tego typu rzeczy. Na każde żądanie możesz sprawdzić, ile zadań zostało wykonanych (jeśli upłynęło 25 minut od ostatniego żądania, być może trzeba zrobić dwie), a następnie wrócić i wykonać je z mocą wsteczną.
Ale, poważnie. Aby to zrobić, potrzebujesz własnego serwera.
nie ma powodu, aby ponownie kierować kołem, zwłaszcza biorąc pod uwagę, jak szeroko stosowany, wytrzymały i dojrzały jest cron. +1 –
Skąd będziesz wiedzieć, kiedy skończysz tańczyć? (http://en.wikipedia.org/wiki/Minuet) – JasonFruit
Nie ma załoga aparatu, ale w zasadzie to, co robi jest dodanie kanałów RSS i tam jest „entries_total” atrybut, który jest aktualizowany i informuje, całkowita liczba kanałów coraz dodany. – s84