Meteor JS:后台流程

时间:2015-07-07 10:01:23

标签: meteor cron

我想添加一个函数,该函数将在服务器上每隔几秒在一个单独的线程中运行一次。

我看了This post并找到了很多可以帮助我的 CRON 软件包,但我不知道他们 API需要在代码中添加的确切位置< / strong>,可能是因为我不太明白他们如何使用 Meteor

我认为我的问题有点生硬,但也许有人告诉我在哪里可以将CRON包功能放在代码中?

2 个答案:

答案 0 :(得分:3)

我使用https://atmospherejs.com/percolate/synced-cron作为cron职业选手的一个例子。

您可以在服务器上运行此程序包的代码(请参阅:https://github.com/percolatestudio/meteor-synced-cron/blob/master/package.js#L13)。

例如,您可以在调用Meteor方法后安排后台任务:

Meteor.methods({
  doCron: function() {
    SyncedCron.add({
      name: 'Crunch some important numbers for the marketing department',
      schedule: function(parser) {
        // parser is a later.parse object
        return parser.text('every 2 hours');
      },
      job: function() {
        var numbersCrunched = CrushSomeNumbers();
        return numbersCrunched;
      }
    });
  }
});

// Somewhere in your code you need this to start processing jobs. Also on server.
Meteor.startup(function () {
  // code to run on server at startup
  SyncedCron.start();
});

答案 1 :(得分:0)

现在不建议使用SyncedCron,我决定提供一个名为Steve Jobs的新后台作业包。它经过生产测试,对于Meteor开发人员来说很容易掌握。