FEATURE: cache most used SQL queries

This commit is contained in:
Michal Kváček
2017-02-22 01:40:26 +01:00
parent cad205960d
commit f3b1951d25
10 changed files with 74 additions and 35 deletions
+9 -7
View File
@@ -3,6 +3,7 @@
namespace App\Providers;
use App\Models\Module;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\ServiceProvider;
@@ -15,18 +16,19 @@ class ModuleManager extends ServiceProvider
public function boot()
{
// this service provider needs published config - config is merged right after this service provider
try {
$modules = Cache::rememberForever('enabled-modules', function () {
$modules = Module::where('enabled', true)
->get();
} catch (\Exception $e) {
// ignore error
return;
}
foreach ($modules as $module) {
$module->module_settings = json_decode($module->module_settings);
}
return $modules;
});
// iterate over all modules and enable or disable them
foreach ($modules as $module) {
$module->module_settings = json_decode($module->module_settings);
if ($module->is_template) {
if (isset($module->module_settings->providers) && !empty($module->module_settings->providers)) {
foreach ($module->module_settings->providers as $provider) {