You can install Laravel-PSRedis easily with composer.
"require": {
"geniuslinchao/laravel-PSRedis": ">=1.2.10",
"geniuslinchao/psredis": ">=1.2.1"
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/geniuslinchao/laravel-PSRedis"
},
{
"type": "vcs",
"url": "https://github.com/geniuslinchao/PSRedis"
}
],
## Configuration
Next, just fill in your sentinel/redis server info in the app/config/database.php config files that already exist in your application.
You may already have some default laravel config values in place in your database config file that looks like this.
/*
|--------------------------------------------------------------------------
| Redis Databases
|--------------------------------------------------------------------------
|
| Redis is an open source, fast, and advanced key-value store that also
| provides a richer set of commands than a typical key-value systems
| such as APC or Memcached. Laravel makes it easy to dig right in.
|
*/
'redis' => [
'cluster' => false,
'default' => [
'host' => '127.0.0.1',
'port' => 6379,
'database' => 0,
],
],
Just overwrite those with the values below and fill in your server info.
'redis' => [
/** the name of the redis node set */
'nodeSetName' => 'sentinel-node-set',
'cluster' => false,
/** Array of sentinels */
'masters' => [
[
'host' => 'sentinel-instance.domain.com',
'port' => '26379',
],
[
'host' => 'sentinel-instance.domain.com',
'port' => '26379',
]
],
/** how long to wait and try again if we fail to connect to master */
'backoff-strategy' => [
'max-attempts' => 10, // the maximum-number of attempt possible to find master
'wait-time' => 500, // miliseconds to wait for the next attempt
'increment' => 1.5, // multiplier used to increment the back off time on each try
]
];
### The Service Provider
Finally, you just need to add the service provider to the providers array in app.php and comment or remove the redis service provider.
/*
|--------------------------------------------------------------------------
| Autoloaded Service Providers
|--------------------------------------------------------------------------
|
*/
'providers' => [
...
// 'Illuminate\Redis\RedisServiceProvider', # comment this out
Indatus\LaravelPSRedis\LaravelPSRedisServiceProvider::class,
],
Note: you may have to composer dump-autoload after adding the service provider
## Contributing
Fork it
Create your feature branch (git checkout -b my-new-feature)
Commit your changes (git commit -m 'Added some feature')
Push to the branch (git push origin my-new-feature)
Create new Pull Request
## Testing
Feel free to clone the repo and run the unit tests locally.
./vendor/bin/phpunit -c ./phpunit.xml
有话要说