MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongo-Aktualisierungsgeschwindigkeit

(Hinweis :Originalantwort nach zusätzlicher Recherche aktualisiert)

Die neuen Befehle für Schreibvorgänge die mit 2.6 eingeführt wurden und daher zwischen jedem unterstützten Treiber (PHP 1.5+) und MongoDB-Server (2.6+) verwendet werden, bedeutet die neue Semantik von w=0 schreibt sind im Spiel. Das bedeutet, dass der Server auf den Abschluss des Vorgangs wartet, bevor er eine Antwort sendet (das heißt, der einzige Unterschied zwischen w=0 und w=1 ist das w=0 lässt die Fehlerdetails weg). Der Fahrer wartet immer noch auf diese Antwort, bevor er von dem Anruf zurückkehrt (d. h. er ist nicht mehr Feuer und Vergessen).

Sie können dies auch in der MongoDB-Shell selbst sehen, und der offizielle Weg, dies zu umgehen, ist die Verwendung des neuen Massen-API . Obwohl ich weiß, dass der 1.5-Treiber auf Legacy-Schreiboperationen zurückgreifen wird, wenn eine Verbindung zu einem 2.4- und niedrigeren Server hergestellt wird, gibt es keine Möglichkeit, dieses Verhalten im PHP-Treiber zu erzwingen.