我想用 MongoDB 优化我的查询,我想知道 PHP 客户端协议(protocol)如何处理从 find() 查询返回的游标,它是将大量结果带到客户端还是获取单个结果从远程数据库一次记录并返回给应用程序?
最佳答案
PHP 驱动程序(以及我遇到的任何其他驱动程序)将根据批量大小获取结果。如果您在 JS shell 中运行直接查找查询,您也可以看到这一点,它会在返回的前 20 个结果的末尾说“有更多”之类的内容。然后调用 iterate (it) 函数将加载下一批等。
在 PHP 中,批处理大小是可配置的,最大为总返回数据大小的限制以及有关限制等的一些其他警告,如下所述:
关于php - PHP 中的 MongoDB 游标,它是在查询执行时将所有记录带到客户端还是在游标迭代时将所有记录一条一条地带到客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9377500/