Maison  >  Questions et réponses  >  le corps du texte

Comment obtenir toutes les clés Redis en cache dans Laravel

La façade de mise en cache dans Laravel ne semble pas vous permettre d'obtenir toutes les clés actuellement mises en cache dans Redis.

Je souhaite créer un point de terminaison afin de pouvoir récupérer ces informations et savoir si mes entrées fonctionnent correctement.

J'ai essayé d'utiliser la façade Redis sans succès en utilisant les commandes suivantes et leurs erreurs respectives

Redis::keys("*");

"Cannot use 'KEYS' with redis-cluster."


Redis::scan("cursor");

"Cannot use 'SCAN' with redis-cluster."

P粉986860950P粉986860950219 Il y a quelques jours358

répondre à tous(1)je répondrai

  • P粉627027031

    P粉6270270312024-02-18 12:01:48

    Dans Redis et cluster, si vous avez beaucoup de clés, il est recommandé d'analyser à la place des clés. Cependant, vous devez l'utiliser correctement. Essayez cette approche.

    use Illuminate\Support\Facades\Redis;
    
    $cursor = '0'; // Start with initial cursor
    
    do {
        // Scan for keys with current cursor
        list($cursor, $keys) = Redis::scan($cursor);
    
        foreach ($keys as $key) {
          echo "Key: $key\n";
       }
    } while ($cursor !== '0'); // Continue scanning until cursor is '0'

    Référence : Analyse Laravel et Redis

    répondre
    0
  • Annulerrépondre