1. 문제 정의

  2. 사실 수집

    UnhandledPromiseRejectionWarning: ReplyError: MOVED
    
    Redis error:  ClusterAllFailedError: Failed to refresh slots cache.
    
  3. 원인 추론

  4. 해결 방안

  5. 해결

    static createPubSubClient(config) {
      const pubsubClient = new Redis({
        host: 도메인,
        port: 포트,  // Pub/Sub 전용 포트
        password: 레디스 비밀번호,
        retryStrategy: (times) => {
          const delay = Math.min(times * 50, 2000);
          return delay;
        }
      });
    
      return pubsubClient;
    } 
    
    services:
      # ... 기존 클러스터 노드들 ...
    
      redis-pubsub:
        image: redis:latest
        container_name: redis-pubsub
        command: >
          redis-server 
          --port 포트
          --requirepass 비밀번호
          --bind 0.0.0.0
          --protected-mode no
          --cluster-announce-ip 도메인
        ports:
          - 포트 
        volumes:
          - ./redis-pubsub-data:/data
        networks:
          - redis-net