Skip to content

About

Event-driven Rust data pipeline using Kafka, PostgreSQL, KEDA autoscaling, and a Grafana observability stack on Docker Compose and Kubernetes.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

15 Commits

Folders and files

Repository files navigation

event-pipeline

Overview

This repository demonstrates a basic event pipeline from a client sending POST requests to an API which forwards messages into Kafka topics for workers to process and store in PostgreSQL, with a Grafana telemetry stack.

The project may be run locally in 2 ways

  • Docker Compose
  • Kubernetes Cluster

The compose approach is much simpler in that it requires fewer tools to run and it consists of 1 instance of each component (load generator, api, kafka, worker, postgresql).

The Kubernetes setup needs extra tooling (kind, kubectl, Helm, KEDA, and related scripts). You can scale the load generator with just scale-client <N> to simulate more clients, build Kafka consumer lag, and let KEDA scale workers automatically from 1 up to 4.

Usage

If you're interested in running the project take a look at the usage file.

Project Scope

More information about the repository and scope of the project may be found here.

About

Event-driven Rust data pipeline using Kafka, PostgreSQL, KEDA autoscaling, and a Grafana observability stack on Docker Compose and Kubernetes.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages