From f71147ecb097884b281b2027131aefd315a8e033 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Mon, 19 May 2014 12:06:24 +0200 Subject: Use markdown instead of rdoc --- README.md | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.rdoc | 81 ------------------------------------------------------------- 2 files changed, 81 insertions(+), 81 deletions(-) create mode 100644 README.md delete mode 100644 README.rdoc diff --git a/README.md b/README.md new file mode 100644 index 0000000000..84d40809f7 --- /dev/null +++ b/README.md @@ -0,0 +1,81 @@ += Active Job -- Make work happen later + +Active Job is a framework for declaring jobs and making them run on a variety +of queueing backends. These jobs can be everything from regularly scheduled +clean-ups, billing charges, or mailings. Anything that can be chopped up into +small units of work and run in parallel, really. + +It also serves as the backend for ActionMailer's #deliver_later functionality +that makes it easy to turn any mailing into a job for running later. That's +one of the most common jobs in a modern web application: Sending emails outside +of the request-response cycle, so the user doesn't have to wait on it. + + +== GlobalID support + +Active Job supports GlobalID serialization for parameters. This makes it possible +to pass live Active Record objects to your job instead of class/id pairs, which +you then have to manually deserialize. Before, jobs would look like this: + +```ruby +class TrashableCleanupJob + def self.perfom(trashable_class, trashable_id, depth) + trashable = trashable_class.constantize.find(trashable_id) + trashable.cleanup(depth) + end +end +``` + +Now you can simply do: + +```ruby +class TrashableCleanupJob + def self.perfom(trashable, depth) + trashable.cleanup(depth) + end +end +``` + +This works with any class that mixes in ActiveModel::GlobalIdentification, which +by default has been mixed into Active Record classes. + + +== Supported queueing systems + +We currently have adapters for: + +* Resque 1.x +* Sidekiq +* Sucker Punch +* Delayed Job + +We would like to have adapters for: + +* beanstalkd +* rabbitmq + + +== Under development as a gem, targeted for Rails inclusion + +Active Job is currently being developed in a separate repository until it's +ready to be merged in with Rails. The current plan is to have Active Job +be part of the Rails 4.2 release, but plans may change depending on when +this framework stabilizes and feels ready. + + +== Download and installation + +The latest version of Active Job can be installed with RubyGems: + + % [sudo] gem install activejob + +Source code can be downloaded as part of the Rails project on GitHub + +* https://github.com/rails/activejob + + +== License + +Active Job is released under the MIT license: + +* http://www.opensource.org/licenses/MIT diff --git a/README.rdoc b/README.rdoc deleted file mode 100644 index 84d40809f7..0000000000 --- a/README.rdoc +++ /dev/null @@ -1,81 +0,0 @@ -= Active Job -- Make work happen later - -Active Job is a framework for declaring jobs and making them run on a variety -of queueing backends. These jobs can be everything from regularly scheduled -clean-ups, billing charges, or mailings. Anything that can be chopped up into -small units of work and run in parallel, really. - -It also serves as the backend for ActionMailer's #deliver_later functionality -that makes it easy to turn any mailing into a job for running later. That's -one of the most common jobs in a modern web application: Sending emails outside -of the request-response cycle, so the user doesn't have to wait on it. - - -== GlobalID support - -Active Job supports GlobalID serialization for parameters. This makes it possible -to pass live Active Record objects to your job instead of class/id pairs, which -you then have to manually deserialize. Before, jobs would look like this: - -```ruby -class TrashableCleanupJob - def self.perfom(trashable_class, trashable_id, depth) - trashable = trashable_class.constantize.find(trashable_id) - trashable.cleanup(depth) - end -end -``` - -Now you can simply do: - -```ruby -class TrashableCleanupJob - def self.perfom(trashable, depth) - trashable.cleanup(depth) - end -end -``` - -This works with any class that mixes in ActiveModel::GlobalIdentification, which -by default has been mixed into Active Record classes. - - -== Supported queueing systems - -We currently have adapters for: - -* Resque 1.x -* Sidekiq -* Sucker Punch -* Delayed Job - -We would like to have adapters for: - -* beanstalkd -* rabbitmq - - -== Under development as a gem, targeted for Rails inclusion - -Active Job is currently being developed in a separate repository until it's -ready to be merged in with Rails. The current plan is to have Active Job -be part of the Rails 4.2 release, but plans may change depending on when -this framework stabilizes and feels ready. - - -== Download and installation - -The latest version of Active Job can be installed with RubyGems: - - % [sudo] gem install activejob - -Source code can be downloaded as part of the Rails project on GitHub - -* https://github.com/rails/activejob - - -== License - -Active Job is released under the MIT license: - -* http://www.opensource.org/licenses/MIT -- cgit v1.2.3