2

SprintBatchAdminに関する初心者の質問。

私の要件は、ユーザーがWeb UIを介して新しいジョブをスケジュールできる(ジョブ機能のいくつかのパラメーターを渡す)ことができる必要があることです。これらのジョブは永続的である必要があり、反復的であり、キャンセルまたは削除される可能性があります。また、最後に実行されたジョブのレポートを生成し、既存のすべてのジョブとその次の実行日を一覧表示することもできます。

おそらく私の最も重要な要件は、これが「オンザフライ」で可能であり、Webアプリケーションの再デプロイやサーバーの再起動を必要としないことです。

これはSpringBatchAdminを使用して実行できますか(ガイドではジョブを追加するためのXMLのアップロードについて説明しているようですが、APIがある場合、バッチを介してその場でジョブを作成できないのはなぜですか?管理者WebUI)?または、JDKタイマーまたはQuartzはそれをサポートしていますか?

4

3 に答える 3

1

ジョブが作成されると、削除することはできませんが、停止することはできます。Spring Batch はすでにジョブの実行を開始している可能性がありますが、DB はまだ更新されていないため、DB からの削除を許可することは危険な操作です。この時点でジョブを削除すると、矛盾が生じます。

新しいジョブのスケジュールについては、「ジョブの起動」で説明されています。ジョブは一般に、Spring Context がロードされたときに一度だけ解析される複雑な構成を持つ可能性があるため、新しいタイプのジョブを作成することはできません。

于 2012-04-06T11:49:07.777 に答える
0

春ごとのバッチジョブはSBAで展開できると思います。つまり、各バッチ ジョブは war ファイルとしてコンパイルされます。それらを一緒にサーバーにデプロイします。このようにして、各ジョブを監視するための次の訪問 URL があります。

http://bactchjobserver/job1

http://bactchjobserver/job2

http://bactchjobserver/job3

http://bactchjobserver/job4

しかし、欠点は、各 war フィルには確かに lib ファイルが含まれているため、各 war ファイルのサイズが 10MB 程度になることです。

同時に、war-file\WEB-INF\classes\META-INF\spring\batch\jobs に new-job.xml を、war-file\WEB-INF に new-job.jar を手動で追加しようとしました。 \lib JBoss を停止せずに。できます。新しいジョブは SBA UI に表示され、実行可能です。

しかし明らかに、これは多くのメンテナンスとトラブルシューティングにつながります。実装できません。

于 2015-04-09T04:07:12.063 に答える