root 5 years ago
parent
commit
89a8fc9a00
2 changed files with 15 additions and 1 deletions
  1. 14 0
      app/Console/Commands/SystemCache.php
  2. 1 1
      app/Console/Kernel.php

+ 14 - 0
app/Console/Commands/SystemCache.php

@@ -5,6 +5,8 @@ namespace App\Console\Commands;
 use Illuminate\Console\Command;
 use App\Models\User;
 use App\Models\Order;
+use App\Models\Server;
+use App\Models\ServerLog;
 use App\Utils\Helper;
 use Illuminate\Support\Facades\Redis;
 
@@ -43,6 +45,7 @@ class SystemCache extends Command
     {
         $this->setMonthIncome();
         $this->setMonthRegisterTotal();
+        $this->setMonthServerTrafficTotal();
     }
 
     private function setMonthIncome() {
@@ -63,4 +66,15 @@ class SystemCache extends Command
                 ->count()
         );
     }
+
+    private function setMonthServerTrafficTotal () {
+        $servers = Server::get();
+        foreach ($servers as $item) {
+            $serverLog = ServerLog::where('created_at', '>=', $item->created_at)
+                ->where('created_at', '<', strtotime('+1 month', $item->created_at))
+                ->where('node_id', $item->id);
+            Redis::set('month_server_traffic_total_u_' . $item->id, $serverLog->sum('u'));
+            Redis::set('month_server_traffic_total_d_' . $item->id, $serverLog->sum('d'));
+        }
+    }
 }

+ 1 - 1
app/Console/Kernel.php

@@ -31,7 +31,7 @@ class Kernel extends ConsoleKernel
         // check commission
         $schedule->command('check:commission')->everyMinute();
         // system cache
-        $schedule->command('system:cache')->everyMinute();
+        $schedule->command('system:cache')->hourly();
         // reset traffic
         $schedule->command('reset:traffic')->monthlyOn(1, '00:00');
     }