使用heroku redis插件在heroku上运行kue-scheduler,虽然我可以让kue作业工作,但似乎kue-scheduler需要在heroku redis环境中不允许某些redis配置。有没有人在Heroku环境中成功运行kue-scheduler。这是我的index.js文件的开头:
var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var path = require('path');
var kue = require('kue-scheduler')
var queue = kue.createQueue({redis:
'redis://h:***************@ec2-**-19-83-130.compute-1.amazonaws.com:23539'
});
var job = queue.create('test', {
title: 'Hello world'
, to: 'j@example.com'
, template: 'welcome-email'
}).save( function(err){
if( !err ) console.log( job.id );
});
job.log('$Job %s run', job.id);
queue.every('30 seconds', job);
queue.process('test', function(job, done){
test_function(job.data.title, done);
});
function test_function(title, done) {
console.log('Ran test function with title %s', title)
// email send stuff...
done();
}
这是错误。
2016-07-21T00:46:26.445297+00:00 app[web.1]: /app/node_modules/parse-server/lib/ParseServer.js:410
2016-07-21T00:46:26.445299+00:00 app[web.1]: throw err;
2016-07-21T00:46:26.445300+00:00 app[web.1]: ^
2016-07-21T00:46:26.445417+00:00 app[web.1]: ReplyError: ERR unknown command 'config'
2016-07-21T00:46:26.445419+00:00 app[web.1]: at parseError (/app/node_modules/redis-parser/lib/parser.js:161:12)
2016-07-21T00:46:26.445420+00:00 app[web.1]: at parseType (/app/node_modules/redis-parser/lib/parser.js:222:14)
2016-07-21T00:46:26.466188+00:00 app[web.1]:
问题是heroku redis在我的redis基础设施上不允许配置选项。
如果某人取得了成功,请感谢任何建议。
答案 0 :(得分:5)
设法解决了这个问题:
var queue = kue.createQueue(
{redis: 'redis://xxxxxxxxxxxxx@ec2-50-19-83-130.compute-1.amazonaws.com:23539',
skipConfig: true
});
只需要skipConfig
参数
答案 1 :(得分:2)
我遇到了同样的问题,无法让kue-scheduler
处理Heroku-Redis
。为了解决这个问题,我使用了Heroku Add-on Redis Cloud
。
这允许您设置所需的Redis标记notify-keyspace-events
,该标记在常规Heroku-Redis
加载项上无法修改。设置此标志:
REDISCLOUD_URL
,应该是redis://rediscloud:PASSWORD@xxx.redislabs.com:PORT_NUMBER
redis-cli -h xxx.redislabs.com -p PORT_NUMBER -a PASSWORD
REDISCLOUD_URL
config set notify-keyspace-events Ex
REDISCLOUD_URL
kue.createQueue()
醇>
感谢@josephktcheung在这里的工作:https://github.com/lykmapipo/kue-scheduler/issues/46