Je zou niet bij elke iteratie ->close() moeten aanroepen. Als je close callt, zeg je tegen de bestuurder dat hij een permanente verbinding niet opnieuw mag gebruiken. Als u dit in een strakke lus uitvoert, heeft het besturingssysteem geen poorten meer om te gebruiken, omdat ze zich allemaal in de TIME_WAIT-status bevinden.
Het PHP-stuurprogramma maakt gebruik van permanente verbindingen en als u (zonder ->close aan te roepen) "new Mongo" in een strakke lus uitvoert, zoals in uw voorbeeld, zal het stuurprogramma niet maak nieuwe verbindingen en hergebruik de reeds bestaande.