Skip to content
turicas edited this page Oct 15, 2012 · 1 revision

General Notes

  • Maybe StoreClass (on Broker) should receive logger instance
  • Have broker as a command that only needs a configuration file to run (specify a package name for workers, for example)
  • Use Travis-CI as CI?
  • Load balancing based on Broker (number of workers should be mutable based on machine resources, not number of workers working/not working)
  • Should be able to deal with big queues (~30k jobs)
  • GitHub's backend (using reque) processes 280k jobs per day
  • Job/Pipeline priorities
  • Job/Pipeline persistence (for Router and Pipeliner)
  • Should we restart workers processes from time to time?
  • Should monitor Pipeliner and Router?
  • How we can add another Router in the same cluster? If the Router hangs, all the system will stop, it's a single point of failure.
  • Option to "tag" brokers (certain jobs need to be run on certain machines)

URLs

Resque features

  • See what's pending
  • Modify pending jobs in-place
  • Tags
  • Priorities
  • Fast pushing and popping
  • See what workers are doing
  • See what workers have done
  • See failed jobs
  • Kill fat workers
  • Kill stale workers
  • Kill workers that are running too long
  • Keep Rails loaded / persistent workers
  • Distributed workers (run them on multiple machines)
  • Workers can watch multiple (or all) tags
  • Don't retry failed jobs
  • Don't "release" failed jobs
Clone this wiki locally