のご質問にお答えするには:
- ん春クラウドタスクは、オーケストレーションを扱う -号春クラウドタスクは、タスクやジョブのオーケストレーションを処理しません。このエコシステムでは、タスクやジョブのデプロイ/オーケストレーションを処理するコンポーネントは、実際にはSpring Cloud Data Flowです(YARN、Cloud Foundry、Kubernetes、Mesosなどのクラウドプラットフォームを使用するかどうかを尋ねた理由です...環境Spring Cloud Data Flowでサポートされています)。に必要とすることなく、状態管理に関して持つバッチを春に
- 同様の能力: - 春クラウドタスクは春ブーツ/春のバッチ上で提供しない付加価値をどのよう
- は春クラウドタスクは、いくつかのことを提供するように設計されてバッチジョブを作成します。クラウド環境でBootアプリケーションを実行する場合、環境から環境への結果を得るための標準的な方法はありません(YARNは、Kubernetesなどのジョブとは異なるCloud Foundryのタスクとは異なる結果を処理します)。 Spring Batchはこれを提供しますが、短命のプロセスはすべてBatch APIのオーバーヘッドを必要とするため、Spring Cloud Taskはこれらのユースケースに軽い触感を提供します。
- 情報リスナーを自動的に追加します。 Spring XDでは、XDコンテナでジョブを実行したときに、XDコンテナが自動的に、リスンできるイベントをブロードキャストする多数の情報リスナを追加しました。 Spring Cloud Taskは、XDコンテナを必要とせずに同じ機能を提供します。
- Spring Cloud Streamとの統合。 Spring Cloud Taskは、Spring Cloud Streamから受信したメッセージからタスクを起動する機能を提供します。また、前述の情報メッセージ(バッチ・イベントとタスク・イベントの両方)は、Spring Cloud Streamチャネルを介して送信されます。
DeployerPartitionHandler
。クラウド環境で作業する場合、このPartitionHandler
の実装では、パーティションバッチジョブのワーカーをタスクとして起動できます。これにより、現代のクラウド環境でリソースを浪費する作業をリッスンする従業員を事前配備する伝統的なオプションの代わりに、パーティション化されたバッチ・ジョブの動的スケーリングが可能になります。
- 複数のタスクのパッケージ化はどのように依存関係で動作しますか?つまり、要するに、これはお勧めできません。 Spring Cloud Taskのアイデアは、Spring Bootアプリケーションの実行がTaskであることです。複数のタスクをパッケージ化し、異なるメソッドを使用することで、異なる刺激に基づいて実行させることができますが、これはSpring Cloud Taskの正しい使用に不可欠な12要素のアプリケーションの概念に反するものです。
現代バッチプラットフォームのための最良の選択肢のための私の2セント
、あなたは本当に最初のプラットフォームのからいくつかを検討する必要があり、それはクラウドファウンドリー/ Kubernetes/Mesos /糸層から始まります。それがなければ、インフラストラクチャの大部分を自分で構築することになります。それがSpring XDがSpring Cloud Data Flowに進化した理由です。 Spring XDのコンテナに追加された複雑さは、現代のプラットフォームを実行することによって除去されます。その部分がなければ、ほとんどの現代のプラットフォームがあなたのために処理するアプリケーションの展開とオーケストレーションを管理するのに多くの時間を費やすことになります。
そこから、簡単なタスクのためのSpring Cloud Task、バッチジョブのSpring Batch、そしてオーケストレーションのSpring Cloud Data Flowを使用すると、かなり簡単にIMHOになります。
私が返信する前に明確にするために、このすべてが「ベアメタル」で動作するように意図されていますか? VM /物理サーバではなく、どんな種類のクラウドプラットフォームでも使用できますか? –
はい、正しいです。 –