Coder Social home page Coder Social logo

easywelfare / recruiter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from onebip/recruiter

0.0 15.0 0.0 587 KB

Job Queue Manager: high performance, high volume, persistent, fault tolerant. 100% PHP/MongoDB, 100% Awesome

License: MIT License

Vim Script 1.38% PHP 95.34% Shell 3.10% Dockerfile 0.18%

recruiter's Introduction

Disclaimer

This is a work in progress not ready to be used or seen. This work is sponsored by Onebip

Recruiter

It's a Job Queue Manager built with PHP meant to be used in PHP projects. Features and characteristics:

  • Jobs are made persistent on MongoDB
  • Jobs are retriable with complex and customizable strategies
  • Multiple queues are supported through tagging
  • Jobs are stored by default in an history collection for after the fact inspection and analytics
  • Built to be robust, scalable and fault tolerant

History

Onebip is a payment system (think PayPal with mobile devices in place of credit cards), things like: payment notifications, subscription renewals, remainder messages, … are really important. You cannot skip or lose a job (notification are idempotent but payments are not). You cannot forgot to have completed a job (customer/merchant support must have data to do their job). You need to know if and when you can retry a failed job (external services have rate limits and are based on agreements/contracts). We have developed internally our job/queue solution called Recruiter. After a year in production and many billions of jobs we have decided to put what we have learned into a stand alone project and to make it available to everyone.

Continuous Integration

Build Status

recruiter's People

Contributors

gabrielelana avatar mirkobonadei avatar giorgiosironi avatar dbellettini avatar

Watchers

Manuel Baldassarri avatar  avatar Danilo Silva avatar Vittorio Vittori avatar Giorgio Mandolini avatar James Cloos avatar Davide Carbone avatar  avatar samuele vitiello avatar Mauro Malvestio avatar Cristiano Mazzarini avatar Carla Soloperto avatar Luca Lanzanò avatar Alberto avatar Fabio Pellegrini avatar

recruiter's Issues

Idempotent Job creation

Please provide a way to specify an "idempotence id" to avoid that a job gets scheduled twice. Even if the original job was archived

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.