当前位置: 首页 > 知识库问答 >
问题:

调用远程服务器上的Spring批处理作业

封永嘉
2023-03-14

我使用Spring批处理管理来管理和监视作业和执行。如何调用一个作业并从一个独立的java应用程序启动它,该应用程序具有到包含Spring Batch Admin WebApp的服务器的给定HTTP连接。

谢谢你的帮助

共有1个答案

聂华翰
2023-03-14

您可以使用Spring Batch Admin JSON API这样做--既可以列出作业,也可以运行作业。此外,您可以公开JMX bean来远程监视和管理批处理作业。

下面是json POST请求到作业服务启动名为“Job1”的作业的示例:

$ curl -d jobParameters=fail=false http://localhost:8080/spring-batch-admin-sample/batch/jobs/job1.json
{"jobExecution" : { 
    "resource" : "http://localhost:8080/spring-batch-admin-sample/batch/jobs/executions/2.json",
    "id" : "2",
    "status" : "STARTING",
    "startTime" : "",
    "duration" : "",
    "exitCode" : "UNKNOWN",
    "exitDescription" : "",
    "jobInstance" : { "resource" : "http://localhost:8080/spring-batch-admin-sample/batch/jobs/job1/1.json" },
    "stepExecutions" : {
    }
  }
}
 类似资料:
  • 问题内容: 我有一个持续集成服务器(Jenkins),它可以构建代码(检查编译错误)并运行测试,然后将文件部署到远程服务器(不是war文件,而是实际的文件结构),我使用Jenkins插件,它允许我每晚通过samba传输文件。 现在,我需要做的是在远程服务器上运行ant命令。之后,我需要在远程服务器上启动应用程序服务器,然后通过从命令行运行.bat文件来启动应用程序服务器。 我完全不知道如何实现此目

  • Iam设计具有多个节点的分布式远程分区批处理作业应用程序。所有的节点(jvm)都将是主节点,从节点也将运行在同一个jvm中。有可能在同一个JVM上拥有主服务器和从服务器吗?我试图测试这个,但它引起了一些问题,似乎spring远程分区不允许在同一个JVM上运行主服务器和从服务器?请帮帮忙。

  • 我对Spring批处理和Spring一般都是新手。我正在开发一个将在WebSphere Application Server上运行的批处理作业。到目前为止,我只是用一些假的台阶搭建了一个骷髅。我还有一个监听器,用于在作业结束时更新一些Oracle DB表。以下是我的AppContext的一部分: 下面是afterJob代码段的开头: 奇怪的是,在我的一些测试运行中(Rational Applica

  • 我有一个Spring批处理作业,它可能在多个服务器上运行。我有一个监听器,可以防止作业的多个实例在一台服务器上同时运行。但是,我要确保该作业不能同时在多台服务器上运行。 我已经找遍了,但没有找到解决这个问题的办法

  • 我有以下工作要处理在一定的时间间隔或特别的基础上。 作业中的步骤如下: 我也想要用户界面,在那里我可以触发一个特别的基础上的工作,而且我应该能够提供参数从用户界面。 我想用Spring batch来完成这个任务,但它更多的是用于读->处理->写之类的工作。这里,在第一步中,我正在生成由第二步读取的数据。我不确定我是否还可以使用Spring batch来实现这个,或者有更好的方法来实现这个。

  • 我有一个spring批处理作业,它以给定的间隔扫描SFTP服务器。当它找到一个新文件时,就会开始处理。 它在大多数情况下都可以正常工作,但有一种情况下它不起作用: 用户开始将新文件上传到SFTP服务器 批处理作业检查服务器并找到一个新文件 它开始处理它 但由于文件仍在上载中,因此在处理过程中遇到意外的输入块结尾,并发生错误。 如何在批处理作业处理开始之前检查文件是否已完全上载到SFTP服务器?