Об этом проекте
Cadence Workflow — это платформа с открытым исходным кодом (с 2017 года) для создания и запуска масштабируемых, отказоустойчивых и долгоиграющих рабочих процессов. Данный репозиторий содержит основной движок оркестрации, а также вспомогательные инструменты, включая CLI, утилиты управления схемами, инструменты для бенчмаркинга/стресс-тестирования и рабочие процессы для проверки работоспособности (canary).
Архитектура: Бэкенд Cadence состоит из нескольких сервисов, базы данных (Cassandra, MySQL или PostgreSQL) и, опционально, Kafka с Elasticsearch. Пользователи развертывают воркер, содержащий реализацию их рабочих процессов, и после запуска бэкенда и воркеров рабочие процессы можно запускать через SDK или CLI.
Начало работы: Самый быстрый способ запустить Cadence локально — через Docker Compose (`docker compose -f docker/docker-compose.yml up`). Доступны примеры для Go и Java. Веб-интерфейс доступен по адресу localhost:8088 для просмотра истории рабочих процессов и подробных трассировок. Для развертывания в Kubernetes консоль KubeStellar предоставляет пошаговую установку с использованием официального Helm-чарта из cadence-charts, включая предварительные проверки, валидацию, устранение неполадок и поддержку отката.
Клиентские библиотеки: Официальные SDK доступны для Go и Java. Сообщество поддерживает SDK для Python и Ruby. Фреймворк iWF также может использоваться как DSL-слой поверх Cadence.
CLI: CLI Cadence — мощный инструмент для управления рабочими процессами, списками задач, доменами и кластерами. Команды организованы по вкладкам (например, workflow -> batch -> start или admin -> workflow -> describe). Варианты установки включают Homebrew (`brew install cadence-workflow`), Docker-образы или сборку из исходного кода. CLI также включает инструменты для работы со схемами SQL и Cassandra.
UI: Веб-интерфейс Cadence (доступен по адресу localhost:8088 при запуске через Docker Compose) предоставляет визуальный интерфейс для просмотра и управления рабочими процессами.
Дополнительные инструменты: Репозиторий включает инструменты для бенчмаркинга/стресс-тестирования, периодические проверки функций (canary) и инструменты управления схемами для баз данных SQL и Cassandra. Файлы схем находятся в /usr/local/etc/cadence/schema/ при установке через Homebrew.
Сообщество: Cadence — часть экосистемы CNCF. Каналы сообщества включают GitHub Discussions, GitHub Issues, StackOverflow и канал #cadence-users в Slack CNCF. Проект лицензирован под Apache 2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.