Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/marioidival/job-processing-system


https://github.com/marioidival/job-processing-system

Last synced: 4 days ago
JSON representation

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/worker

Both 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