Meteor 流星/阿波罗:建立Redis Pubsub进行生产?
我正在努力让Redis Pubsub在我的银河系流星应用程序中工作 用户可以通过以下方式对其进行初始化:Meteor 流星/阿波罗:建立Redis Pubsub进行生产?,meteor,redis,graphql,publish-subscribe,apollo,Meteor,Redis,Graphql,Publish Subscribe,Apollo,我正在努力让Redis Pubsub在我的银河系流星应用程序中工作 用户可以通过以下方式对其进行初始化: import { RedisPubSub } from 'graphql-redis-subscriptions'; import * as Redis from 'ioredis'; const options = { host: REDIS_DOMAIN_NAME, port: PORT_NUMBER, retry_strategy: options => {
import { RedisPubSub } from 'graphql-redis-subscriptions';
import * as Redis from 'ioredis';
const options = {
host: REDIS_DOMAIN_NAME,
port: PORT_NUMBER,
retry_strategy: options => {
// reconnect after
return Math.max(options.attempt * 100, 3000);
}
};
const pubsub = new RedisPubSub({
...,
publisher: new Redis(options),
subscriber: new Redis(options)
});
当我跑步时:
const options = {
host: Meteor.isProduction ? 'www.myDomain.com': 'dev.myDomain.com',
port: Meteor.isProduction ? 443 : 3000,
retry_strategy: options => {
// reconnect after
return Math.max(options.attempt * 100, 3000);
}
};
const pubsub = new RedisPubSub({
publisher: new Redis(options),
subscriber: new Redis(options)
});
…我在我的开发系统上遇到以下控制台日志错误:
TypeError:Redis不是构造函数
我也这样试过:
const pubsub = new RedisPubSub({
publisher: new Redis.createClient(options),
subscriber: new Redis.createClient(options)
});
…并在我的开发系统上获取控制台日志错误:
[ioredis]未处理的错误事件:MaxRetriesPerRequestError:已达到每个请求的最大重试次数限制(即20次)
为生产初始化Redis Pubsub的正确方法是什么?好的,我想我明白了。我需要在服务器上单独安装Redis,Galaxy还不支持 哦,我想我明白了。Pubsub确实需要在数据库服务器上运行 Galaxy不需要支持这一点,因为Galaxy希望您在另一台主机上运行数据库,即使该数据库是Mongo 由于我的数据库位于postgres中,因此我添加了GraphQLCollege:graphql postgres订阅,并按照上所述设置选项,我的pubsub立即开始在Galaxy上工作。解决了的!(编辑)