Ich habe geschrieben eine einfache MongoDB-Abfrage in PHPPHP MongoDB Count Aufzeichnungen
, die in der letzten Stunde gesamte Online berechnet alles
funktioniert gut, aber ich fühle diese Art und Weise für die Leistung nicht gut ist
Seien sie Ursache Abfragees selbst alle Spiele Daten zurück (so ist es nicht mehr benötigte Daten in dieser Abfrage)
Was ich brauche, ist nur die Anzahl der Datensätze
Ich habe eine Sammlung, die Millionen von Dokumenten
Script hat:
<?php
// Last Online Time
$Time = time() - 86400;
// Connection
$Manager = new MongoDB\Driver\Manager("mongodb://" . DB_USERNAME . ":" . DB_PASSWORD . "@" . DB_HOST . ":" . DB_PORT . "/" . DB_NAME);
// Query
$Query = new MongoDB\Driver\Query(['LastOnlineTime' => ['$gt' => (int) $Time]], []);
// Result
$Result = $Manager->executeQuery(DB_NAME . "." . $Collection, $Query);
// Get Total Online In 1 Hour Ago
echo count($Result->toArray());
?>
Ist mein Gefühl Rechte?