Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Jak przekierować dane wyjściowe subskrypcji redis

Dzieje się tak, ponieważ nie ma automatycznego opróżniania standardowego wyjścia, gdy redis-cli wyświetla komunikaty powiązane z subskrypcją. Tak więc ostatnie komunikaty przed zatrzymaniem redis-cli nie pojawiają się w pliku wyjściowym.

Nie ma opcji, której można użyć do wymuszenia systematycznego opróżniania, redis-cli.c musi zostać załatany. W kodzie źródłowym Redis edytuj src/redis-cli.c i znajdź następujący fragment kodu. Dodaj brakującą linię spłukiwania.

    if (config.pubsub_mode) {
        if (config.output != OUTPUT_RAW)
            printf("Reading messages... (press Ctrl-C to quit)\n");
        while (1) {
            if (cliReadReply(output_raw) != REDIS_OK) exit(1);
            // The following line must be added
            fflush(stdout);
        }
    }

Po ponownym skompilowaniu redis-cli powinno działać zgodnie z oczekiwaniami.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Klaster Redis - gotowy do produkcji?

  2. Jak korzystać z posortowanych list Redis

  3. Jak poznać typ danych wartości danego klucza?

  4. Node.js — Sesja nie jest zachowywana przez res.redirect()

  5. jak mogę przekazać nieskończoność do redis z Pythona?