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

Używanie Redis do kolejek dla wielu aplikacji Laravel na jednym serwerze

Miałem ten sam problem i znalezienie rozwiązania zajęło mi godziny.

https://laravel.com/docs/5.6/queues#driver-prerequisites mówi:

Aby użyć redis sterownik kolejki, powinieneś skonfigurować połączenie Redisdatabase w swoim config/database.php plik konfiguracyjny.

A potem https://laravel.com/docs/5.6/redis#predis mówi:

Oprócz domyślnego host , port , database i password opcje konfiguracji serwera, Predis obsługuje dodatkowe parametry połączenia, które można zdefiniować dla każdego z serwerów Redis. Wykorzystaj te dodatkowe opcje konfiguracyjne, dodaj je do konfiguracji Redisservera w config/database.php plik konfiguracyjny.

Czytając stronę „parametry połączenia”, w końcu znalazłem https://github.com/nrk/predis/wiki/Client-Options, który mówi, że „prefiks” jest obsługiwaną opcją.

Możesz więc edytować swój config/database.php plik konfiguracyjny, który należy mieć:

'redis' => [
        'client' => 'predis',
        'cluster' => false,
        'options'=>[
            'prefix' => env('REDIS_PREFIX', 'YOUR_PREFIX_HERE')
        ],
        'default' => [
            'host'     => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port'     => env('REDIS_PORT', 6379),
            'database' => 0,
        ],
    ],

Nie jestem pewien, czy musisz ponownie uruchomić Redis lub Supervisord.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Czy możliwy jest nieblokujący Redis pubsub?

  2. Spring Data RedisTemplate:serializacja wartości i wartości HashValue

  3. Jak stworzyć model we wzorcu DRY za pomocą flow.js (dla wywołań asynchronicznych) w node.js?

  4. Czy dwa moduły powinny używać tego samego połączenia redis? (pracuję z Flask)

  5. Sesja NodeJS + ExpressJS + RedisStore jest niezdefiniowana