【问题标题】:Parse.com: Multiple scheduled jobsParse.com:多个预定作业
【发布时间】:2014-06-26 20:01:17
【问题描述】:

在我的应用中,我想拥有多个后台作业。在免费计划中,我得到了一项并发的后台工作。如果工作时间发生冲突会发生什么?作业会排队还是丢弃?

【问题讨论】:

    标签: parse-platform task


    【解决方案1】:

    工作被删除。这个 Parse App 被允许执行 2 个计划的作业,这就是当四个计划在同一分钟内运行时发生的情况:

    【讨论】:

      【解决方案2】:

      你可以写一个队列,下面是一个例子:

      Tasks 是一个具有队列能够运行的功能的对象。

      然后,您在表中创建具有两个属性的 Jobs,method:String params:Object

      例如方法:'fetchVenue':参数:{'id':'1234'}

      然后将 parse 设置为每分钟运行一次队列函数

      tasks = {}
      tasks.fetchVenue = function(params) {
          var promise = new Parse.Promise();
          //some async tasks
          promise.resolve("fetchVenue called with params:"+params);   
          return promise
      
      }
      
      tasks.fetchUser = function(params) {
          var promise = new Parse.Promise();
          //some async tasks  
          promise.resolve("fetchUser called with params:"+params);    
          return promise
      }
      
      Parse.Cloud.job("queue", function(request, status) {
      
          var jobCount = 0
          var query = new Parse.Query('Job');
          query.notEqualTo("complete", true);
          query.each(function(job) {  
      
              if (tasks.hasOwnProperty(job.get('method'))) {      
      
                  tasks[job.get('method')]().then(function(completion){
                      jobComplete(job)
                      jobCount++ 
                      status.message(completion);
                  })  
      
              } else {
                  status.message("job not found "+job.get('method'));
              }
          }).then(function(){
              status.success(jobCount+" jobs processed");
          }, function(error) {    
              status.error("Uh oh, something went wrong.");
          })
      
      });
      
      var jobComplete = function(job){
          job.set('complete',true)
          job.save()
      }
      

      【讨论】:

        猜你喜欢
        • 2016-10-31
        • 1970-01-01
        • 2018-07-19
        • 2011-10-11
        • 1970-01-01
        • 2023-03-22
        • 2018-09-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多