Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/contribsys/faktory
Language-agnostic persistent background job server
https://github.com/contribsys/faktory
Last synced: 11 days ago
JSON representation
Language-agnostic persistent background job server
- Host: GitHub
- URL: https://github.com/contribsys/faktory
- Owner: contribsys
- License: other
- Created: 2017-06-15T17:01:29.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2024-09-11T17:47:45.000Z (about 2 months ago)
- Last Synced: 2024-10-16T08:42:17.578Z (24 days ago)
- Language: Go
- Homepage: https://contribsys.com/faktory/
- Size: 2.77 MB
- Stars: 5,749
- Watchers: 65
- Forks: 229
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Changelog: Changes.md
- Contributing: .github/contributing.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-ccamel - contribsys/faktory - Language-agnostic persistent background job server (Go)
- awesome-repositories - contribsys/faktory - Language-agnostic persistent background job server (Go)
README
# Faktory [![CI](https://github.com/contribsys/faktory/actions/workflows/ci.yml/badge.svg)](https://github.com/contribsys/faktory/actions/workflows/ci.yml) [![Go Report Card](https://goreportcard.com/badge/github.com/contribsys/faktory)](https://goreportcard.com/report/github.com/contribsys/faktory)
At a high level, Faktory is a work server. It is the repository for
background jobs within your application. Jobs have a type and a set of
arguments and are placed into queues for workers to fetch and execute.You can use this server to distribute jobs to one or hundreds of
machines. Jobs can be executed with any language by clients using
the Faktory API to fetch a job from a queue.![webui](https://raw.githubusercontent.com/contribsys/faktory/master/docs/webui.png)
## Basic Features
- Jobs are represented as JSON hashes.
- Jobs are pushed to and fetched from queues.
- Jobs are reserved with a timeout, 30 min by default.
- Jobs `FAIL`'d or not `ACK`'d within the reservation timeout are requeued.
- FAIL'd jobs trigger a retry workflow with exponential backoff.
- Contains a comprehensive Web UI for management and monitoring.## Installation
See the [Installation wiki page](https://github.com/contribsys/faktory/wiki/Installation) for current installation methods.
Here's more info on installation with [Docker](https://github.com/contribsys/faktory/wiki/Docker) and [AWS ECS](https://github.com/contribsys/faktory/wiki/AWS-ECS).## Documentation
Please [see the Faktory wiki](https://github.com/contribsys/faktory/wiki) for full documentation.
## Support
Open up a Discussion or Issue.
## Author
Mike Perham, @getajobmike, mike @ contribsys.com