Giter VIP home page Giter VIP logo

aide-de-camp's Introduction

Aide-De-Camp

๐Ÿ’‚ Aide-De-Camp


Built with โค๏ธ by Zero Assumptions

crates.io pr-build CLA assistant License: Apache-2.0 License: MIT


Aide-De-Camp is a backend agnostic delayed job queue. Very similar to girl_friday from the Ruby world.

Notable features:

  • Asynchronous. Built from the ground-up using async/await for maximum concurrency.
  • Backend agnostic1. This crate won't force you to run any additional software you don't want to.
  • Flexible scheduling. Schedule your job to run right now, in time relative to now or at a specific future time.
  • Binary Payloads. Job payloads serialized with bincode for maximum speed and space efficiency.
  • Concurrency limits. Specify desired concurrency for each runner.
  • Job Router. Run as many job types as you want and limit which runners can process which jobs.
  • Cross Platform. Runs anywhere rust has standard lib.
  • Traced. All important functions are instrumented.

Getting started

Install

Pick a backend1 that suits you and add following to your Cargo.toml:

# Cargo.toml

[dependencies]
aide-de-camp = "0.1.0"
aide-de-camp-sqlite = "0.1.0"  # Or any other available backend

Usage

aide-de-camp-sqlite has a pretty detailed example of how to use this crate.

Components

  • core. Traits and error types meant to be used by aide-de-camp ecosystem.
  • runner. Optional module (runner feature enabled by default) that contains default implementations of runner, job router and types required for their work.

License

Choose licensing under either of the following for your use case:

Blog Posts

Contribution

Contributions are subject to CLA (Contributor License Agreement). Any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Footnotes

  1. Currently, only SQLite supported (aide-de-camp-sqlite), but PostgreSQL backend is coming soon! โ†ฉ โ†ฉ2

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.