Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

allow batch enqueueing of jobs using Redis Pipelining #154

Merged
merged 3 commits into from
Jan 11, 2019

Commits on Dec 18, 2018

  1. Configuration menu
    Copy the full SHA
    4ee677b View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2018

  1. allow for enqueueing multiple jobs using Redis Pipelining

    Using Redis Pipelining is much faster than one-by-one enqueueing since there is a single Round-Trip-Time for the entire batch, instead of one RTT for each job. This improves the performance of enqueueing a large number of jobs considerably.
    
    I decided against splitting large batches into multiple chunks (as recommended by https://redis.io/topics/pipelining#redis-pipelining), but mentioned it in the JavaDoc of this method. Thus, it is up to the user of this library to decide whether he wants to consider chunking the batch.
    maciejp authored and Florian Rampp committed Dec 19, 2018
    Configuration menu
    Copy the full SHA
    52fb913 View commit details
    Browse the repository at this point in the history
  2. only validate queue parameter once when batch enqueueing

    Not once per job in the list. Thus, I refactored the validation methods to be smaller. I decided against inlining `validateArguments()` method since I am not sure whether this is in line with the design principle of the author of this library.
    Florian Rampp committed Dec 19, 2018
    Configuration menu
    Copy the full SHA
    02e3af9 View commit details
    Browse the repository at this point in the history