标签: job-scheduling

有哪些工具可用于测试JobScheduler?

我们通过JobScheduler实现了一个Job,用于后台加载数据.这项工作每天会开一次.我们可以使用哪些工具来测试此功能(可能是ADB)?

用例是能够模拟运行作业所需的条件,或者只是说"运行此作业"作为我们自动化测试套件的一部分.

android job-scheduling android-jobscheduler

51
推荐指数
3
解决办法
2万
查看次数

Quartz用于作业调度的替代方案

有没有人找到任何替代Quartz的开源解决方案,他们很满意?

我知道Cronacle是一个备受尊重(且价格昂贵)的闭源解决方案,用于作业调度,但我想确保在走下这条路线之前耗尽开源替代品.

java quartz-scheduler job-scheduling

50
推荐指数
2
解决办法
4万
查看次数

使用H/1****每隔一分钟运行一次Jenkins作业

我如何每分钟运行一次在詹金斯创建的工作?我错过了什么吗?

PS:我试图不使用:*/1****

在此输入图像描述 在此输入图像描述

cron build job-scheduling jenkins periodic-processing

47
推荐指数
2
解决办法
4万
查看次数

EJB @Schedule等到方法完成

我想编写一个后台作业(EJB 3.1),它每分钟执行一次.为此,我使用以下注释:

@Schedule(minute = "*/1", hour = "*")
Run Code Online (Sandbox Code Playgroud)

这工作正常.

但是,有时候这项工作可能需要一分多钟.在这种情况下,计时器仍然被触发,导致线程问题.

如果当前执行没有完成,是否可以终止调度程序?

java schedule java-ee job-scheduling ejb-3.1

36
推荐指数
3
解决办法
4万
查看次数

什么是Spark Job?

我已经完成了spark安装并执行了几个设置master和worker节点的测试用例.也就是说,我对Spark上下文(而不是SparkContext)中的作业意味着什么非常混乱.我有以下问题

  • 来自Driver程序的工作有多么不同.
  • 应用程序本身是Driver程序的一部分?
  • Spark提交方式是一份工作吗?

我阅读了Spark文档,但这件事对我来说还不清楚.

话虽如此,我的实现是编写火花作业{programmatically},这将火花提交.

如果可能,请帮助一些例子.这将非常有帮助.

注意:请不要发布spark链接,因为我已经尝试过了.虽然这些问题听起来很幼稚,但我仍需要更清晰的理解.

batch-processing job-scheduling apache-spark

31
推荐指数
1
解决办法
2万
查看次数

使用REST触发spark工作

我一直在尝试apache火花.我的问题更具体地触发火花工作.在这里,我发布了关于理解火花工作的问题.在弄脏工作后,我转向了我的要求.

我有一个REST端点,我公开API来触发Jobs,我使用Spring4.0进行Rest实现.现在继续我想在Spring中实现Job as Service,我将以编程方式提交Job,这意味着当触发端点时,使用给定的参数我将触发该作业.我现在有很少的设计选择.

  • 类似于下面的写作,我需要维护几个由抽象类调用的作业JobScheduler.

     /*Can this Code be abstracted from the application and written as 
      as a seperate job. Because my understanding is that the 
     Application code itself has to have the addJars embedded 
     which internally  sparkContext takes care.*/
    
     SparkConf sparkConf = new SparkConf().setAppName("MyApp").setJars(
     new String[] { "/path/to/jar/submit/cluster" })
     .setMaster("/url/of/master/node");
      sparkConf.setSparkHome("/path/to/spark/");
    
            sparkConf.set("spark.scheduler.mode", "FAIR");
            JavaSparkContext sc = new JavaSparkContext(sparkConf);
            sc.setLocalProperty("spark.scheduler.pool", "test");
    
        // Application with Algorithm , transformations
    
    Run Code Online (Sandbox Code Playgroud)
  • 扩展到上面有服务处理的多个版本的作业.

  • 或者使用Spark Job Server来执行此操作.

首先,我想知道在这种情况下最佳解决方案是什么,执行方式和扩展方式.

注意:我正在使用来自spark的独立群集.善意的帮助.

rest job-scheduling spring-batch apache-spark spring-data-hadoop

24
推荐指数
3
解决办法
4万
查看次数

在运行Spark作业时,YARN不会基于公平份额抢占资源

我在YARN Fair Scheduled队列上重新平衡Apache Spark作业资源时遇到问题.

对于测试,我已经配置了Hadoop 2.6(也尝试过2.7)以在MacOS上使用本地HDFS以伪分布式模式运行.对于作业提交使用Spark的网站上的 "Pre-build Spark 1.4 for Hadoop 2.6 and later"(也试过1.5).

在Hadoop MapReduce作业上使用基本配置进行测试时,Fair Scheduler按预期工作:当群集资源超过某个最大值时,将计算公平份额,并根据这些计算抢占和平衡不同队列中作业的资源.

使用Spark作业运行相同的测试,在这种情况下,YARN正在为每个作业正确计算公平份额,但Spark容器的资源不会重新平衡.

这是我的conf文件:

$ HADOOP_HOME的/ etc/Hadoop的/纱线的site.xml

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
   <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
   </property>
   <property>
      <name>yarn.nodemanager.aux-services.spark_shuffle.class</name>
      <value>org.apache.spark.network.yarn.YarnShuffleService</value>
   </property>
   <property>
      <name>yarn.resourcemanager.scheduler.class</name>
      <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>
   </property>
   <property>
      <name>yarn.scheduler.fair.preemption</name>
      <value>true</value>
   </property>
</configuration>
Run Code Online (Sandbox Code Playgroud)

$ HADOOP_HOME的/ etc/Hadoop的/公平scheduler.xml

<?xml version="1.0" encoding="UTF-8"?>
<allocations>
   <defaultQueueSchedulingPolicy>fair</defaultQueueSchedulingPolicy>
   <queue name="prod">
      <weight>40</weight>
      <schedulingPolicy>fifo</schedulingPolicy>
   </queue>
   <queue name="dev">
      <weight>60</weight>
      <queue name="eng" />
      <queue name="science" />
   </queue>
   <queuePlacementPolicy>
      <rule name="specified" create="false" />
      <rule name="primaryGroup" create="false" /> …
Run Code Online (Sandbox Code Playgroud)

hadoop job-scheduling hadoop-yarn apache-spark

20
推荐指数
1
解决办法
1720
查看次数

18
推荐指数
2
解决办法
2万
查看次数

android N中的作业调度程序,间隔小于15分钟

我的问题的一部分,我如何在"Nougat"中以不到15分钟的间隔建立一个工作,在他的答案中被"暴雪"回答:
Job Scheduler没有在Android N上运行
他解释了问题并建议使用以下解决方法:

JobInfo jobInfo;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
  jobInfo = new JobInfo.Builder(JOB_ID, serviceName)
      .setMinimumLatency(REFRESH_INTERVAL)
      .setExtras(bundle).build();
} else {
  jobInfo = new JobInfo.Builder(JOB_ID, serviceName)
      .setPeriodic(REFRESH_INTERVAL)
      .setExtras(bundle).build();
}    
Run Code Online (Sandbox Code Playgroud)

但是,使用建议

  .setMinimumLatency(REFRESH_INTERVAL)    
Run Code Online (Sandbox Code Playgroud)

刚开始工作一次;
但是如何在Android牛轧糖设备(不使用处理程序或报警管理器)上定期获得约30秒的周期?

android job-scheduling android-7.0-nougat

18
推荐指数
2
解决办法
1万
查看次数

具有RPC接口的作业队列管理器

我需要一个可以通过Internet控制的作业队列管理器.它应该能够执行和停止进程,检查它们的状态(理想情况下通知并在进程退出时执行一些代码),响应命令并且还能够向服务器报告.

背景:我有一个GWT应用程序,允许创建在云实例(目前是EC2)上执行的作业.我想将"作业包"(进程操作的数据等)推送到S3,启动Linux EC2实例(或使用已经运行的实例),并告诉实例上的作业管理器执行该作业(可能与其他工作平行).然后,它应该从S3中提取"作业数据包",运行对该数据进行操作的进程,并使用一些信息(例如退出代码,stdout,stderr)向运行GWT应用程序的服务器部分的服务器报告.如果我必须将stdour/err写入进程中的文件并读取该文件,那也没关系.

我真的希望管理器"关闭"它运行的进程,这意味着我想避免使用来自JDK的Runtime.exec之类的东西.如果我以Quartz为例,似乎我必须这样做.

我很好,两个方向的调用都是异步的.只要我可以在我的GWT服务器端轻松地为它构建一个接口(例如,通过SSL对servlet的HTTP请求将是非常简单的),我对任何合理的调用技术都很好.

作业管理员不需要非常复杂的排队系统.顺序或并行运行几个进程应该没问题.确定一个进程在其生命周期内收到的计算时间是多么好(AFAIK,这可能具有挑战性).

我还没有找到任何现有的软件,包括http://java-source.net/open-source/job-schedulers.我怀疑我可能需要围绕一个职业经理建立一个RPC接口(当然还有身份验证等); 也许使用像Apache Commons Exec这样的东西.在这种情况下,我更喜欢Java或Python作为工作管理器部分.

我很乐意听到前一个或后一个场景的建议!

gwt rpc job-queue job-scheduling

17
推荐指数
0
解决办法
760
查看次数