2016-07-21 30 views
1

Ich habe zwei Projekt auf dem gleichen Server (Ubuntu 16.04) mit verschiedenen Datenbank, Benutzernamen und auch verschiedene user_password. Wenn die Warteschlange eines Projekts jedoch fehlgeschlagen ist, wird sie möglicherweise in die fehlgeschlagene Jobtabelle des B-Projekts eingefügt. Ja, es bedeutet manchmal, dass der fehlerhafte Datensatz an der richtigen Stelle eingefügt wird. Ich habe die Laravel Config alle mit der Standardeinstellung überprüft. Ich benutze den Betreuer halten Walker. Also hat jeder das gleiche Problem und eine Lösung dafür? Ich öffne hier ein Problem auf GitHub. https://github.com/laravel/framework/issues/14403Laravel 5.2 Multi-Projekte verwenden Warteschlange auf Redis, wenn fehlgeschlagen Job der Datensatz über die Datenbank gehen

+0

Mit mehreren Projekten meinen Sie zwei oder mehr unabhängige Laravel-Anwendungen, die in ihren eigenen Ordnern bereitgestellt werden? – peterm

+0

Absolut ja. Zwei von ihnen in getrennten Ordner wie, und erstellt sie mithilfe von compiler.like:composer create-project --prefer-dist laravel/laravel A-Projekt und Komponist create-project --prefer-dist laravel/laravel B-Project –

Antwort

1

Durch die Antwort des Autors. I'v löste das Problem, indem sie diese in zwei Schritten:

1.Change die config/cache.php

'prefix' => 'myProjectName', //the default value is laravel. 

2.Ändern die config/database.php

'redis' => [ 

    'cluster' => false, 

    'default' => [ 
     'host'  => env('REDIS_HOST', 'localhost'), 
     'password' => env('REDIS_PASSWORD', null), 
     'port'  => env('REDIS_PORT', 6379), 
     'database' => 2,     //the default is 0 
    ], 

], 

Sie sollten auch Achten Sie auf config/queue.php, wenn Ihre Warteschlange mehr als 60 Sekunden hat, um den Job zu beenden.

'redis' => [ 
     'driver'  => 'redis', 
     'connection' => 'default', 
     'queue'  => 'default', 
     'expire'  => 120,  //the default is 60, and would be your like. 
    ],