首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Loopback 4:使用Loopback 4的调度cron示例

Loopback 4:使用Loopback 4的调度cron示例
EN

Stack Overflow用户
提问于 2019-04-08 17:16:54
回答 2查看 778关注 0票数 0

因为我是Loopback4和Typescript的新手,知道我们必须使用自定义引导程序来实现像Cron这样的调度任务。

我需要一个代码片段来做到这一点,即一个自定义的启动类,实现了配置,发现和加载启动阶段运行Cron

EN

回答 2

Stack Overflow用户

发布于 2019-04-09 17:17:11

我不确定这是不是做这件事的方法,但这对我来说是有效的。

https://loopback.io/doc/en/lb4/Booting-an-Application.html#bootcomponent

首先在项目文件夹中创建一个组件。我创建了src\components\cron.component.ts

代码语言:javascript
运行
复制
import { Component } from "@loopback/core";
import { CronJob, CronCommand } from "cron"

export class CronJobsComponent implements Component {
    private cj: CronJob;
    constructor(){
        this.start()
    }

    async start(){
        this.cj = new CronJob('* * * * * *', this.showMessage)
        this.cj.start();
    }

    showMessage:CronCommand = async () => {
        console.log("inside cron jobs")
    }

}

接下来,在application.ts文件中导入我们的组件

import { CronJobsComponent } from './components'

并在构造函数中注册我们的新组件

this.component(CronJobsComponent);

corn作业在应用程序引导时启动。

我使用了https://www.npmjs.com/package/cronhttps://www.npmjs.com/package/@types/cron

希望这对你有帮助。

票数 3
EN

Stack Overflow用户

发布于 2019-09-04 14:20:53

您始终可以创建一个cron端点。

http://localhost:3000/cron

然后,您可以将curl命令添加到crontab。

代码语言:javascript
运行
复制
curl http://localhost:3000/cron

这种方法是处理关注点分离的好方法。如果您的应用程序接口是在kubernetes上运行的微服务,则可以使用Cron资源调用cron端点。

如果您的应用程序是公开的,只需确保端点是安全的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55569988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档