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

Integrate better job sequencers #1

Open
claustres opened this issue Nov 16, 2017 · 5 comments
Open

Integrate better job sequencers #1

claustres opened this issue Nov 16, 2017 · 5 comments

Comments

@claustres
Copy link
Member

claustres commented Nov 16, 2017

Kue will add support for failover and concurrency.

worker-farm might also be used as it is more simple and does not require a side tool like redis.

agenda looks also great and will allow job scheduling.

@claustres claustres changed the title Integrate kue as a job sequencer backend Integrate better job sequencers Nov 16, 2017
@claustres
Copy link
Member Author

A big point is to choose if sequencing occurs at the job or the task level.

At job level we will have something more serverless-oriented, where each job might be a complete new krawler instance that can be embedded in a lambda. In this case we should at least allow tasks to be multithreaded.

@claustres
Copy link
Member Author

claustres commented Apr 20, 2018

Started a PoC using kue just as a new job type without multithreading/cluster for now. The main issue we face with clustering is how we share stores between workers because they are created when running the job. However the job should only be run by a single worker to avoid duplication while tasks are dispatched across workers.

Since Redis support under windows by https://github.com/MicrosoftArchive/redis has been discontinued we use https://github.com/tporadowski/redis.

claustres added a commit that referenced this issue Apr 20, 2018
@claustres
Copy link
Member Author

claustres commented Apr 20, 2018

The issue with stores also exists in single-thread mode when job passes the store to task using the store property. Indeed task data are serialized into Redis by Kue causing the store to be lost, e.g. the CLI test does not work with Kue.

@claustres
Copy link
Member Author

Another interesting sequencer is bull, the following gist shows how to use it with a Feathers app.

@claustres
Copy link
Member Author

breejs might also be a good candidate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Stand-by
Development

No branches or pull requests

1 participant