Skip to content

GlobalNamesArchitecture/rotary

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rotary

Gem Version Continuous Integration Status Coverage Status CodePolice Dependency Status

WARNING: 0.0.1 is a squatting version to get a cool name -- functionality will follow shortly...

Rotary is a server side workers scheduler which allows to break queue lines into threads according to a 'unique' user id -- api key, IP address, etc. And executing jobs for all users at the same time instead of 'first come first serve' basis.

There is a problem of a 'greedy user' for worker queues like resque. If one user decides to put 10 million jobs into the queue everyone else will be forced to wait. This gem creates individual queues for users, and takes next scheduled job from each of them in turn, no matter if they did submitted their jobs early or late.

Installation

Add this line to your application's Gemfile:

gem 'rotary'

And then execute:

$ bundle

Or install it yourself as:

$ gem install rotary

Usage

Completely useless at the moment....

Versioning

This gem is following practices of Semantic Versioning

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Copyright

Authors: Dmitry Mozzherin

Copyright (c) 2013 Marine Biological Laboratory. See LICENSE for further details.

About

Server side workers scheduler which allows to break queue lines into threads according to a 'unique' user id -- api key, IP address, etc

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages