Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Meteor 流星/阿波罗:建立Redis Pubsub进行生产?_Meteor_Redis_Graphql_Publish Subscribe_Apollo - Fatal编程技术网

Meteor 流星/阿波罗:建立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 => {

我正在努力让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 => {
    // 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上工作。解决了的!(编辑)