Coder Social home page Coder Social logo

clowder's Introduction

clowder Build Status

This is a prototype for a distributed event-driven job queue which uses HTTP as a transport and Redis as a backend.

Quick start :

Test :

prove t/01-process.t

Run :

JOBSERVER=http://localhost:3000
cd script
redis-server &
./jobserver.pl daemon --listen $JOBSERVER &
./subscriber.pl &
./minion.pl $JOBSERVER &
./submit_job.pl --app './app.pl'
./check_job.pl --id 1

System Architecture :

Start jobserver.pl, which waits for new jobs to do.
Start minion.pl which runs the jobs for you.

submit_job.pl will submit a job request
ingest_file.pl adds files (using REST)

subscriber.pl watches changes in state
so that as dependencies arrive, the minions don't have to wait.

Use check_job.pl in order to see
if your job is running or waiting for a key.

"Key"s represent files, or a granule of data.
We represent them with hashes; the content doesn't matter.

Contents :

  • jobserver.pl : job server
  • minion.pl : sample job processor (minion)
  • submit_job.pl : client for submitting job requests
  • ingest_file.pl : client for announcing file ingests
  • subscriber.pl : backend process for event-driven state changes
  • gui.pl : monitor files and jobs

clowder's People

Contributors

bduggan avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.