为实时查询设置解析和redis

时间:2017-06-14 16:44:09

标签: parse-platform redis

我有一个在群集中运行的解析服务器,一切都运行得很好但是在最后几天我不得不添加实时查询,只是在配置中激活它并不能很好地工作,因为事件"创建"仅被触发几次(而不是在聚类中它不会错过一次)。 从解析文档中建议使用redis,这是我的问题:我不明白解析的数据库如何传递给redis' db正常工作。 可以请一个人把我放在正确的道路上吗?

1 个答案:

答案 0 :(得分:0)

配置ParseServer时,可以选择包含Redis服务器的URL并设置要为其启用实时查询的类名:

liveQuery: {
    classNames: ['_User', 'Map'],
    redisURL: 'redis://localhost:6379'  
}

完整设置:

var api = new ParseServer({
  databaseURI: databaseUri || 'mongodb://IP:PORT/PATH',
  cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
  appId: process.env.APP_ID || 'AppID',
  masterKey: process.env.MASTER_KEY || 'MasterKey', //Add your master key here. Keep it secret!
  //javascriptKey: process.env.JAVASCRIPT_KEY || '',
  serverURL: process.env.SERVER_URL || 'http://IP:PORT/parse',  // Don't forget to change to https if needed
  liveQuery: {
    classNames: ['ExampleClass'], // Add Class names here
    redisURL: 'redis://REDIS_IP:REDIS_PORT'
  },
});
var app = express();


var port = process.env.PORT || 1111;
var httpServer = require('http').createServer(app);
httpServer.listen(port, function() {
    console.log('App on port ' + port + '.');
});

// This will enable the Live Query real-time server
ParseServer.createLiveQueryServer(httpServer,  {
  redisURL: 'redis://REDIS_IP:REDIS_PORT'
});