Skip to content

CO0LGIRL/task-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Task Manager

CI Pipeline Python Django Kafka ClickHouse PostgreSQL License

Масштабируемая микросервисная экосистема для управления задачами с выделенным аналитическим движком. Проект спроектирован с использованием принципов EDA (Event-Driven Architecture) и разделения операционных (OLTP) и аналитических (OLAP) данных.


Архитектура системы

Проект реализует паттерн распределенной системы, где сервисы взаимодействуют асинхронно:

  • api-service: Основной сервис управления задачами. Использует PostgreSQL для транзакционных данных и выступает в роли Kafka Producer.
  • analytics-service: Высокопроизводительный сервис аналитики. Работает как Kafka Consumer, агрегируя события в OLAP-хранилище ClickHouse.
  • common: Общий модуль с контрактами данных (Pydantic), обеспечивающий согласованность (Event Schemas) между сервисами.

Основной функционал

  • Task Management: Полный REST API для управления жизненным циклом задач.
  • Event-Driven: Асинхронная передача событий через брокер сообщений Kafka.
  • OLAP Analytics: Сбор и обработка метрик в ClickHouse для высокоскоростной агрегации.
  • Schema Validation: Строгая типизация и валидация контрактов событий с помощью Pydantic.
  • CI/CD Ready: Интегрированные GitHub Actions для линтинга (flake8) и тестирования.
  • Developer Experience: Полная автоматизация локального развертывания через Makefile.

Технологический стек

  • Backend: Python 3.10, Django 4.2, DRF
  • Message Broker: Apache Kafka
  • Databases: PostgreSQL 15, ClickHouse
  • Infrastructure: Docker & Docker Compose
  • Testing & Quality: PyTest, Unittest.mock, Flake8
  • CI/CD: GitHub Actions

Быстрый старт

Требования

  • Docker & Docker Compose
  • Make (опционально)

Развертывание

make build
make up

make migrate

docker-compose ps

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors