最近,我们开始为我们的应用开发聊天功能,因为我们已经在使用Parse SDK / Server,所以我们决定使用Parse LiveQuery ...
问题是,关于如何在单独的服务器上部署Parse LiveQuery服务器的文档还不够充分!我们看到了这一点:http://docs.parseplatform.org/parse-server/guide/#scalability但我们并没有真正弄清楚如何继续...
所以我们有几个问题:
为了创建可扩展的Parse LiveQuery Server,我们需要做什么? (最好是在Digital Ocean / Heroku上)
如何与我们的原始Parse Server进行通信,我们的MongoDB存储在哪里?
答案 0 :(得分:1)
在你的解析服务器B中给你数据库的databaseUri A:var api = new ParseServer({databaseURI:' mongodb:// myMogoURL',
答案 1 :(得分:1)
这是我们在Heroku上设置可扩展Parse LiveQuery服务器的方法 因为在Heroku上只有一个“网络”进程,它将分为两个Heroku应用程序:Main和LiveQuery。
答:主应用 - 除LiveQuery服务器之外的所有功能
步骤A1。在Heroku上设置Parse应用程序
步骤A2。添加Heroku Redis(免费计划足以进行测试)
步骤A3。配置Parse app,为liveQuery添加redisURL
var api = new ParseServer({
...
liveQuery: {
classNames: [...],
redisURL: REDIS_URL_ON_MAIN
},
...
});
B:LiveQuery应用 - 适用于主应用的可扩展LiveQuery服务器
步骤B1。在Heroku上升级另一个Parse应用程序
步骤B2。配置Parse app,不要设置liveQuery
var api = new ParseServer({
appId: APP_ID_ON_LIVEQUERY,
masterKey: MASTER_KEY_ON_LIVEQUERY,
serverURL: SERVER_URL_ON_LIVEQUERY,
databaseURI: // (Optional) Only warning even if leave it default
});
步骤B3。创建LiveQuery服务器
var app = express();
app.use(PARSE_MOUNT_ON_LIVEQUERY, api);
var httpServer = require('http').createServer(app);
httpServer.listen(PORT_ON_LIVEQUERY, function() {
/* Create HTTP server successfully */
});
ParseServer.createLiveQueryServer(httpServer, {
redisURL: REDIS_URL_ON_MAIN // Redis URL from Mani app
});
C:客户端 - 例如Swift
步骤C1。使用
的Init Client实例Client(server:applicationId:clientKey:)
let client = Client(server: SERVER_URL_ON_LIVEQUERY,
applicationId: APP_ID_ON_LIVEQUERY,
clientKey: nil)
步骤C2。订阅LiveQuery
let subscription = client.subscribe(query)
subscription.handle(Event.created, { query, object in
/* Handle CREATE event */
})
最后,我们可以在Heroku ^ _ ^
上的LiveQuery应用程序中扩展Web流程欢迎对glist
发表评论