Added Redis cache/session support

This commit is contained in:
Dan Brown 2016-04-03 11:00:14 +01:00
parent 412eed19c3
commit c5960f9b6a
4 changed files with 74 additions and 18 deletions

View File

@ -12,7 +12,8 @@
"barryvdh/laravel-ide-helper": "^2.1", "barryvdh/laravel-ide-helper": "^2.1",
"barryvdh/laravel-debugbar": "^2.0", "barryvdh/laravel-debugbar": "^2.0",
"league/flysystem-aws-s3-v3": "^1.0", "league/flysystem-aws-s3-v3": "^1.0",
"barryvdh/laravel-dompdf": "0.6.*" "barryvdh/laravel-dompdf": "0.6.*",
"predis/predis": "^1.0"
}, },
"require-dev": { "require-dev": {
"fzaninotto/faker": "~1.4", "fzaninotto/faker": "~1.4",

54
composer.lock generated
View File

@ -4,8 +4,8 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"hash": "523e654de96df9259fa5dfcb583d6e3e", "hash": "eb7c71e9ed116d3fd2a1d0af07f9f134",
"content-hash": "74b5601c253aab71cf55e0885f31ae7f", "content-hash": "17d2d7fc5fed682f2a290d6588538035",
"packages": [ "packages": [
{ {
"name": "aws/aws-sdk-php", "name": "aws/aws-sdk-php",
@ -1759,6 +1759,56 @@
], ],
"time": "2015-02-03 12:10:50" "time": "2015-02-03 12:10:50"
}, },
{
"name": "predis/predis",
"version": "v1.0.3",
"source": {
"type": "git",
"url": "https://github.com/nrk/predis.git",
"reference": "84060b9034d756b4d79641667d7f9efe1aeb8e04"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nrk/predis/zipball/84060b9034d756b4d79641667d7f9efe1aeb8e04",
"reference": "84060b9034d756b4d79641667d7f9efe1aeb8e04",
"shasum": ""
},
"require": {
"php": ">=5.3.2"
},
"require-dev": {
"phpunit/phpunit": "~4.0"
},
"suggest": {
"ext-curl": "Allows access to Webdis when paired with phpiredis",
"ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
},
"type": "library",
"autoload": {
"psr-4": {
"Predis\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Daniele Alessandri",
"email": "suppakilla@gmail.com",
"homepage": "http://clorophilla.net"
}
],
"description": "Flexible and feature-complete PHP client library for Redis",
"homepage": "http://github.com/nrk/predis",
"keywords": [
"nosql",
"predis",
"redis"
],
"time": "2015-07-30 18:34:15"
},
{ {
"name": "psr/http-message", "name": "psr/http-message",
"version": "1.0", "version": "1.0",

View File

@ -6,9 +6,8 @@ if (env('CACHE_DRIVER') === 'memcached') {
$memcachedServers = explode(',', trim(env('MEMCACHED_SERVERS', '127.0.0.1:11211:100'), ',')); $memcachedServers = explode(',', trim(env('MEMCACHED_SERVERS', '127.0.0.1:11211:100'), ','));
foreach ($memcachedServers as $index => $memcachedServer) { foreach ($memcachedServers as $index => $memcachedServer) {
$memcachedServerDetails = explode(':', $memcachedServer); $memcachedServerDetails = explode(':', $memcachedServer);
$components = count($memcachedServerDetails); if (count($memcachedServerDetails) < 2) $memcachedServerDetails[] = '11211';
if ($components < 2) $memcachedServerDetails[] = '11211'; if (count($memcachedServerDetails) < 3) $memcachedServerDetails[] = '100';
if ($components < 3) $memcachedServerDetails[] = '100';
$memcachedServers[$index] = array_combine($memcachedServerKeys, $memcachedServerDetails); $memcachedServers[$index] = array_combine($memcachedServerKeys, $memcachedServerDetails);
} }
} }
@ -83,6 +82,6 @@ return [
| |
*/ */
'prefix' => 'laravel', 'prefix' => env('CACHE_PREFIX', 'bookstack'),
]; ];

View File

@ -1,5 +1,21 @@
<?php <?php
// REDIS - Split out configuration into an array
if (env('REDIS_SERVERS', false)) {
$redisServerKeys = ['host', 'port', 'database'];
$redisServers = explode(',', trim(env('REDIS_SERVERS', '127.0.0.1:6379:0'), ','));
$redisConfig = [
'cluster' => env('REDIS_CLUSTER', false)
];
foreach ($redisServers as $index => $redisServer) {
$redisServerName = ($index === 0) ? 'default' : 'redis-server-' . $index;
$redisServerDetails = explode(':', $redisServer);
if (count($redisServerDetails) < 2) $redisServerDetails[] = '6379';
if (count($redisServerDetails) < 3) $redisServerDetails[] = '0';
$redisConfig[$redisServerName] = array_combine($redisServerKeys, $redisServerDetails);
}
}
return [ return [
/* /*
@ -123,16 +139,6 @@ return [
| |
*/ */
'redis' => [ 'redis' => $redisConfig,
'cluster' => false,
'default' => [
'host' => '127.0.0.1',
'port' => 6379,
'database' => 0,
],
],
]; ];