このプロジェクトについて

Cadence Workflowは、スケーラブルで耐障害性のある長時間実行ワークフローを構築・実行するためのオープンソースプラットフォーム(2017年以降)です。このリポジトリには、コアのオーケストレーションエンジンに加えて、CLI、スキーマ管理ユーティリティ、ベンチマーク/ストレステストツール、カナリアヘルスチェックワークフローなどのサポートツールが含まれています。 アーキテクチャ: Cadenceバックエンドは、複数のサービス、データベース(Cassandra、MySQL、PostgreSQL)、およびオプションでKafkaとElasticsearchで構成されています。ユーザーはワークフロー実装を含むワーカーをデプロイし、バックエンドとワーカーが実行されると、SDKまたはCLIを介してワークフローをトリガーできます。 はじめに: Cadenceをローカルで実行する最も簡単な方法は、Docker Compose(`docker compose -f docker/docker-compose.yml up`)を使用することです。GoおよびJava用のサンプルレシピが利用可能です。Web UIはlocalhost:8088でアクセスでき、ワークフローの履歴や詳細なトレースを表示できます。Kubernetesデプロイメントの場合、KubeStellar Consoleは、cadence-chartsの公式Helmチャートを使用したガイド付きのステップバイステップインストールを提供し、事前チェック、検証、トラブルシューティング、ロールバックサポートを含みます。 クライアントライブラリ: 公式SDKはGoとJavaで利用可能です。コミュニティ保守のSDKはPythonとRubyに存在します。iWFフレームワークは、Cadenceの上にDSLレイヤーとして使用することもできます。 CLI: Cadence CLIは、ワークフロー、タスクリスト、ドメイン、クラスターを操作するための強力なツールです。コマンドはタブで整理されています(例: workflow -> batch -> start、またはadmin -> workflow -> describe)。インストールオプションには、Homebrew(`brew install cadence-workflow`)、Dockerイメージ、ソースからのビルドがあります。CLIには、SQLおよびCassandra用のスキーマツールもバンドルされています。 UI: Cadence Web UI(Docker Composeで実行するとlocalhost:8088で利用可能)は、ワークフローの表示と管理のための視覚的なインターフェースを提供します。 追加ツール: このリポジトリには、ベンチマーク/ストレステストワークフローツール、定期的な機能ヘルスチェック(カナリア)ツール、SQLおよびCassandraデータベース用のスキーマ管理ツールが含まれています。スキーマファイルは、Homebrewでインストールした場合、/usr/local/etc/cadence/schema/にあります。 コミュニティ: CadenceはCNCFエコシステムの一部です。コミュニティチャネルには、GitHub Discussions、GitHub Issues、StackOverflow、CNCF Slackの#cadence-usersチャネルが含まれます。このプロジェクトはApache 2.0ライセンスの下で提供されています。