{"action":"created","issue":{"url":"https://api.github.com/repos/YaleSTC/reservations/issues/1328","labels_url":"https://api.github.com/repos/YaleSTC/reservations/issues/1328/labels{/name}","comments_url":"https://api.github.com/repos/YaleSTC/reservations/issues/1328/comments","events_url":"https://api.github.com/repos/YaleSTC/reservations/issues/1328/events","html_url":"https://github.com/YaleSTC/reservations/issues/1328","id":113206555,"number":1328,"title":"Proper background job setup","user":{"login":"orenyk","id":901808,"avatar_url":"https://avatars.githubusercontent.com/u/901808?v=3","gravatar_id":"","url":"https://api.github.com/users/orenyk","html_url":"https://github.com/orenyk","followers_url":"https://api.github.com/users/orenyk/followers","following_url":"https://api.github.com/users/orenyk/following{/other_user}","gists_url":"https://api.github.com/users/orenyk/gists{/gist_id}","starred_url":"https://api.github.com/users/orenyk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orenyk/subscriptions","organizations_url":"https://api.github.com/users/orenyk/orgs","repos_url":"https://api.github.com/users/orenyk/repos","events_url":"https://api.github.com/users/orenyk/events{/privacy}","received_events_url":"https://api.github.com/users/orenyk/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/YaleSTC/reservations/labels/diff:%208","name":"diff: 8","color":"ffff00"},{"url":"https://api.github.com/repos/YaleSTC/reservations/labels/pri:%202","name":"pri: 2","color":"ffaaaa"},{"url":"https://api.github.com/repos/YaleSTC/reservations/labels/type:%20feature","name":"type: feature","color":"bfd4f2"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/YaleSTC/reservations/milestones/22","html_url":"https://github.com/YaleSTC/reservations/milestones/Wish%20List","labels_url":"https://api.github.com/repos/YaleSTC/reservations/milestones/22/labels","id":766160,"number":22,"title":"Wish List","description":"Bucket milestone for future features","creator":{"login":"orenyk","id":901808,"avatar_url":"https://avatars.githubusercontent.com/u/901808?v=3","gravatar_id":"","url":"https://api.github.com/users/orenyk","html_url":"https://github.com/orenyk","followers_url":"https://api.github.com/users/orenyk/followers","following_url":"https://api.github.com/users/orenyk/following{/other_user}","gists_url":"https://api.github.com/users/orenyk/gists{/gist_id}","starred_url":"https://api.github.com/users/orenyk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orenyk/subscriptions","organizations_url":"https://api.github.com/users/orenyk/orgs","repos_url":"https://api.github.com/users/orenyk/repos","events_url":"https://api.github.com/users/orenyk/events{/privacy}","received_events_url":"https://api.github.com/users/orenyk/received_events","type":"User","site_admin":false},"open_issues":65,"closed_issues":0,"state":"open","created_at":"2014-08-26T14:48:27Z","updated_at":"2015-11-12T15:20:47Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-10-25T04:54:53Z","updated_at":"2015-11-22T04:53:13Z","closed_at":null,"body":"Inspired by #1302 - we're starting to talk about moving away from using the *nix cron utility to run scheduled tasks and, if we actually want to do this right, we should probably start using a proper job queue setup (e.g. either [Resque](https://github.com/resque/resque) or [Sidekiq](http://sidekiq.org/)) to handle both recurring tasks and general background jobs, e.g. send e-mails. Since this will definitely complicate deployment (requiring a worker process, Redis server, etc) it might be super long-term but definitely a major release feature.\r\n\r\nAs a side note, we should also do this post-Rails 4.2 / Rails 5 to take advantage of ActiveJob."},"comment":{"url":"https://api.github.com/repos/YaleSTC/reservations/issues/comments/158710097","html_url":"https://github.com/YaleSTC/reservations/issues/1328#issuecomment-158710097","issue_url":"https://api.github.com/repos/YaleSTC/reservations/issues/1328","id":158710097,"user":{"login":"orenyk","id":901808,"avatar_url":"https://avatars.githubusercontent.com/u/901808?v=3","gravatar_id":"","url":"https://api.github.com/users/orenyk","html_url":"https://github.com/orenyk","followers_url":"https://api.github.com/users/orenyk/followers","following_url":"https://api.github.com/users/orenyk/following{/other_user}","gists_url":"https://api.github.com/users/orenyk/gists{/gist_id}","starred_url":"https://api.github.com/users/orenyk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orenyk/subscriptions","organizations_url":"https://api.github.com/users/orenyk/orgs","repos_url":"https://api.github.com/users/orenyk/repos","events_url":"https://api.github.com/users/orenyk/events{/privacy}","received_events_url":"https://api.github.com/users/orenyk/received_events","type":"User","site_admin":false},"created_at":"2015-11-22T04:53:13Z","updated_at":"2015-11-22T04:53:13Z","body":"Based on some more extended reading, it appears as though [delayed_job](https://github.com/collectiveidea/delayed_job) should be fine for our purposes; while the other two options certainly would be more efficient if we were running thousands upon thousands of jobs per day, due to their use of Redis, we're not really going to ever need that level of performance for any of our current instances and Delayed Job should be much easier to set up. @YaleSTC/reservations, any thoughts / objections?"}}