标签: job-scheduling

如何在oracle sql开发人员中使用链接一个接一个地执行该过程?

我是Oracle SQL的初学者.我正在使用Oracle SQL开发人员工具.我有两个叫做p1和的程序p2.

如何使用链概念在每天的特定时间逐个执行程序,这意味着我应该p1首先执行,一旦完全执行.之后我必须p2每天在特定的时间执行.

在我的情况下,我必须在3.00时钟执行.供您参考,请参阅以下示例代码.有谁能解决这个问题?提前致谢

BEGIN 
    DBMS_SCHEDULER.CREATE_CHAIN (
       chain_name            =>  'my_chain1',
       rule_set_name         =>  NULL,
       evaluation_interval   =>  NULL,
       comments              =>  NULL);
    END;
    /

    BEGIN
     DBMS_SCHEDULER.DEFINE_CHAIN_STEP('my_chain1', 'stepA', 'P1');
     DBMS_SCHEDULER.DEFINE_CHAIN_STEP('my_chain1', 'stepB', 'P2');

    END;
    /

    BEGIN
     DBMS_SCHEDULER.DEFINE_CHAIN_RULE('my_chain1', 'TRUE', 'START stepA');
     DBMS_SCHEDULER.DEFINE_CHAIN_RULE('my_chain1', 'stepA COMPLETED', 'Start stepB');
     DBMS_SCHEDULER.DEFINE_CHAIN_RULE('my_chain1', 'stepB COMPLETED', 'END');
    END;
    /

    BEGIN
     DBMS_SCHEDULER.ENABLE('my_chain1');
    END;
    /

    BEGIN
     DBMS_SCHEDULER.CREATE_JOB (
       job_name        => 'chain_job_1',
       job_type        => 'CHAIN',
       job_action      => 'my_chain1',
       repeat_interval => 'freq=daily;byhour=13;byminute=0;bysecond=0',  //In my case I should execute …
Run Code Online (Sandbox Code Playgroud)

sql oracle job-scheduling chain

6
推荐指数
1
解决办法
84
查看次数

JobService 不会在 android 9 中重新安排

我正在尝试让我的应用程序在 Android 9 上运行。以下代码在 Android 8 之前都可以正常工作,但出于某种原因,JobService 不会在 android 9 上重新安排。它第一次被安排,但不会根据到设置周期。

class RetrieveJobService : JobService() {

override fun onStartJob(params: JobParameters): Boolean {
    doBackgroundWork(params)
    return true
}

private fun doBackgroundWork(params: JobParameters) {
    Thread {
        try {
            doRetrieveBackgroundStuff(this)
            jobFinished(params, false)
        } catch (e: Exception) {
            jobFinished(params, false)
        }
    }.start()
}

override fun onStopJob(params: JobParameters): Boolean {
    return false
}

}
Run Code Online (Sandbox Code Playgroud)

这里是我的 JobInfo.Builder

val builder = JobInfo.Builder(jobID, componentName)
                    .setPersisted(true)

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
    builder.setPeriodic(millis, 15 * 60 * 1000) //15 min
} …
Run Code Online (Sandbox Code Playgroud)

android job-scheduling kotlin jobservice android-9.0-pie

6
推荐指数
1
解决办法
3037
查看次数

如何动态改变芹菜节拍的时间表?

我正在使用芹菜 4.3.0。我正在尝试根据 json 文件中的时间表每 5 秒更新一次 celery beat 的时间表,以便当我手动编辑、添加或删除该 json 文件中的计划任务时,celery beat 会获取更改调度程序而无需重新启动它。

我尝试的是创建一个任务,通过更新app.conf['CELERYBEAT_SCHEDULE']. 该任务每 5 秒成功运行一次,但 celery beat 不会更新到新的计划,即使我设置beat_max_loop_interval为 1 秒。

任务.py

from celery import Celery

app = Celery("tasks", backend='redis://', broker='redis://')
app.config_from_object('celeryconfig')

@app.task
def hello_world():
    return "Hello World!"

@app.task
def update_schedule():
    with open("path_to_scheduler.json", "r") as f:
        app.conf['CELERYBEAT_SCHEDULE'] = json.load(f)
Run Code Online (Sandbox Code Playgroud)

芹菜配置文件

beat_max_loop_interval = 1  # Maximum number of seconds beat can sleep between checking the schedule

beat_schedule = {
    "greet-every-10-seconds": {
        "task": "tasks.hello_world",
        "schedule": 10.0
    }, …
Run Code Online (Sandbox Code Playgroud)

python scheduled-tasks job-scheduling celery celerybeat

6
推荐指数
0
解决办法
2096
查看次数

我们能否可靠地长时间保持 HTTP/S 连接打开?

我的团队维护一个应用程序(用 Java 编写),用于处理长时间运行的批处理作业。这些作业需要按定义的顺序运行。因此,应用程序在预定义的端口上启动套接字服务器以接受作业执行请求。它使套接字保持打开状态,直到作业完成(成功或失败)。这样,作业调度程序就知道一个作业何时结束,并且在成功完成该作业后,它会按预定义的顺序触发下一个作业。如果作业失败,调度程序会发出警报。

这是我们十多年来一直采用的设置。我们有一些作业需要运行几分钟,而另一些则需要几个小时(取决于数量)才能完成。该设置工作正常,没有任何问题。

现在,我们需要将此应用程序移至容器(RedHat OpenShift Container Platform),并且现有的基础设施策略仅允许公开默认的 HTTPS 端口。调度程序位于 OCP 外部,无法访问默认 HTTPS 端口以外的任何端口。

理论上,我们可以使用 HTTPS,将客户端超时设置为非常长的持续时间,并尝试模仿 TCP 套接字的当前设置。但是,由于 HTTP 协议是为服务短期请求而设计的,因此这种设置足够可靠吗?

java http batch-processing job-scheduling

6
推荐指数
1
解决办法
2360
查看次数

用Java中的Quartz运行两个作业

我有Quartz编码如下,第一个作业完美运行:

JobDetail jd = null;
CronTrigger ct = null;   
jd = new JobDetail("Job1", "Group1",  Job1.class);
ct = new CronTrigger("cronTrigger1","Group1","0/5 * * * * ?");
scheduler.scheduleJob(jd, ct);
jd = new JobDetail("Job2", "Group2",  Job2.class);
ct = new CronTrigger("cronTrigger2","Group2","0/20 * * * * ?");
scheduler.scheduleJob(jd, ct);
Run Code Online (Sandbox Code Playgroud)

但我发现Job2是Job1的一个完全独立的工作,它不会执行.

调度程序使用Java中的侦听器启动.我也尝试过使用scheduler.addJob(jd,true); 但没有变化.我在Windows 7上通过JVM运行Java.

java quartz-scheduler job-scheduling

5
推荐指数
1
解决办法
1715
查看次数

如何使用NServiceBus安排每天运行的任务

是否有使用NServiceBus安排任务的优雅方式.我在搜索网络找到了一种方法.NServiceBus是否提供用于调度的内部API.

nservicebus job-scheduling

5
推荐指数
1
解决办法
3395
查看次数

Quartz Scheduler可以串行运行作业吗?

我正在研究使用Quartz Scheduler,我想知道是否有可能不是按时间安排工作,而是在另一个工作完成时.因此,当Job A完成后,它会启动Job B.完成后,它会启动Job C等.

Job A -> Job B -> Job C -> Job A... continuously.
Run Code Online (Sandbox Code Playgroud)

这是工作的正确工具吗?或者我应该研究其他什么?

quartz-scheduler job-scheduling

5
推荐指数
1
解决办法
2221
查看次数

在多台机器上利润下降的高效调度工作

问题:考虑M台机器上n个作业的调度问题,其中每个作业具有处理时间p i,并且如果在时间t完成则给出利润g i(t).所有作业都在时间0释放.所有g i(t)都是非递增函数.为简单起见,我们可以假设机器不是先发制人的.

对于M = 1并且线性递减利润函数.使用贪婪算法可以在O(n)中解决这个问题.但对于一般功能,它是NP完全的.

我对一般情况感兴趣.请给我任何关于问题的论文或资源材料的链接.我在互联网上搜索但没有找到任何有趣的M> 1,尽管之前有关于近似M = 1边界的工作.

请注意,我不希望你解决这个问题,但只需要解决类似问题的先前工作,如果有的话.如果您有任何想法可以提供帮助,请随时分享.

我想知道m机器和n个具有相同发布日期和一般非增加利润函数的作业对此问题的界限.我找到了一份指向这个方向的文章

http://arxiv.org/pdf/1008.4889v1.pdf

当所有作业具有相同的释放时间时,它们给出O(1)近似值.我想找到类似的问题文献以及他们用来解决问题的想法.

algorithm np-complete maximize approximate job-scheduling

5
推荐指数
1
解决办法
283
查看次数

从intentservcie回调到jobservice

我有一个jobcheduler触发了Jobservice的onStartjob.在onStartJob中,我启动了一个intentservice来完成这项工作.工作完成后,我希望intentservice对jobservice进行回调,以便可以调用onjobfinished.如何回复JobService?

android job-scheduling intentservice

5
推荐指数
1
解决办法
2360
查看次数

如何检查作业是否安排在firebase作业调度程序中?

如何检查作业是否安排在firebase作业调度程序中?以下代码适用于Job scheduler api -

public static boolean isJobServiceOn( Context context, int JOB_ID ) {
        JobScheduler scheduler = (JobScheduler) context.getSystemService( Context.JOB_SCHEDULER_SERVICE ) ;

        boolean hasBeenScheduled = false ;

        for ( JobInfo jobInfo : scheduler.getAllPendingJobs() ) {
            if ( jobInfo.getId() == JOB_ID ) {
                hasBeenScheduled = true ;
                break ;
            }
        }

        return hasBeenScheduled ;
    }
Run Code Online (Sandbox Code Playgroud)

在firebase工作调度员中有什么喜欢的吗?

android job-scheduling firebase-job-dispatcher

5
推荐指数
1
解决办法
2396
查看次数