このトピックでは、マイクロサービスエンジン (MSE) XXL-JOB とオープンソース XXL-JOB を比較します。
機能セット | 機能 | オープンソース XXL-JOB | Alibaba Cloud XXL-JOB |
互換性 | プロトコルの互換性 | 異なるバージョン間での互換性はありません。 | すべてのバージョンと互換性があります。 |
基本機能 | スケジューリングタイプ | cron または fixed_rate | cron、fixed_rate、fixed_delay、one_time、api。 |
タイムゾーン | サポートされていません。 | サポート | |
カスタムカレンダー | サポートされていません。 | サポート | |
開始時刻の設定 | サポートされていません。 | サポート | |
シャーディングブロードキャスト | 集計はサポートされていません。 | 集計はサポートされています。 | |
O&M | 手動実行と停止。 | 手動実行、停止、その場での再実行、データバックフィル、成功としてマーク、一時停止/再開、スキップ/スキップ解除。 | |
タスク依存関係のオーケストレーション | サブタスク。 直列実行のみサポートされています。 | 視覚的なワークフローオーケストレーション。 条件分岐、外部依存関係、手動ノード、カスタム変数、上流および下流のデータ転送、運用保守操作などをサポートします。 | |
グレースフルシャットダウン | サポートされていません。 クライアントが停止すると、スレッドは強制的に中断されます。 | サポート | |
ジョブのカナリアリリース | サポートされていません。 | タグベースのルーティングとスケジューリングをサポートします。 MSE マイクロサービスガバナンスとの統合後、動的タギングとエンドツーエンドのカナリアリリースが可能になります。 | |
可観測性 | スケジューリングイベント | サポートされていません。 | サポートされています。 |
モニタリングダッシュボード | 日次データのみ表示できます。 | 分単位、時間単位、日単位のデータを表示できます。 | |
操作レコード | サポートされていません。 | サポート | |
ログ | ログはクライアントに保存されます。 実行ごとに小さなファイルが生成され、パフォーマンスと安定性の問題を引き起こします。 | Simple Log Service (SLS) を使用してログファイルを収集できます。 | |
監視とアラート | アラート通知方法 | メール | メール、Webhook、ショートメッセージ、電話。 |
アラートの連絡先 | サポートされていません。 | CloudMonitor の連絡先と統合します。 | |
アラート履歴 | サポートされていません。 | サポートされています。 | |
安定性 | タスクの同時実行制御 | クライアント側の制御。 複数のエグゼキュータでは、べき等実行を保証できません。 | サーバー側の制御。 グローバルなべき等実行を保証します。 |
アプリケーションの速度制限 | サポートされていません。 | サポート | |
データベースのパフォーマンス低下の可能性 | 各スケジューリング操作は、データベースに実行履歴を保持します。 デフォルトでは、過去 30 日間のデータが保持されます。 `xxl_job_log` テーブルが急激に増加すると、データベースのパフォーマンスが著しく低下し、タスクのスケジューリングに影響します。 | コンピュートとストレージの分離アーキテクチャとホット/コールドデータ階層化を使用します。 最近のタスク実行レコードはデータベースに保持され、長期的な履歴は SLS にアーカイブされます。 これにより、オープンソース XXL-JOB の履歴レコードのストレージボトルネックが効果的に解決されます。 | |
タスクトリガーの欠落の可能性 | 各スケジューリング操作は、データベースから実行計画を取得する必要があります。 取得がタイムアウトすると、タスクトリガーは欠落します。 | 各サーバーノードが割り当てられたタスクをメモリ内で独立してスケジューリングする分散アーキテクチャを使用します。 これにより、データベースの負荷が大幅に軽減され、タスクトリガーが欠落する可能性が大幅に減少します。 | |
セキュリティ | コンソールログイン | ユーザー名とパスワードによるログイン。 | Alibaba Cloud アカウント、Resource Access Management (RAM) ユーザー、RAM ロール、およびシングルサインオン (SSO)。 |
きめ細かなアクセス制御 | サポートされていません。 | RAM アクセスポリシーを使用します。 インスタンスレベルおよびアプリケーションレベルの権限の隔離、およびさまざまな操作レベルでの権限管理をサポートします。 | |
SDK アクセス認証 | クラスター全体で単一のアクセストークンを共有します。 | 異なる AppName は異なるアクセストークンを使用します。 |