Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/marioidival/job-processing-system
https://github.com/marioidival/job-processing-system
Last synced: 4 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/marioidival/job-processing-system
- Owner: marioidival
- Created: 2022-10-24T08:55:33.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2022-10-24T13:09:47.000Z (about 2 years ago)
- Last Synced: 2024-11-01T01:09:42.063Z (about 2 months ago)
- Language: Go
- Size: 807 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Job Processing System
### System Architecture
![System architecture](./imgs/system-architecture.png)
### Data Flow Diagrams
![dfd0](./imgs/dfd0.png)
![dfd1](./imgs/dfd1.png)
![schema](./imgs/schema.png)
### How to run
> This project is a simple replica to see the system running.
The project can be set up by Makefile commands:
- make start/api
- make start/workerBoth commands must be run in different sessions.
The API can be found at localhost:3000, with the /jobs endpoint, only GET and POST methods are allowed.#### Enqueue a JOB:
This it's an example of enqueue a JOB on POST /jobs:
```json
{
"action": "sum",
"data": [1, 2, 3]
}
```And their response
```json
{
"message": "job enqueued"
}
```It's allowed just "sum" and "sub" actions.
### Filters
It's allowed to filter jobs through `status` query parameter on GET /jobs
- done
- processed
- error