PHP和Mongo – findOne()导致内存耗尽

我的 PHP memory_limit是64M(这是相当高的开始)

我有一个MongoCollection :: findOne()在我的PHP代码调用,我通过MongoId“找到一个”.
它在大多数情况下起作用.但是在某些情况下,它会导致PHP超过64M的memory_limit.

Mongo中的数据记录最多为3.5MB,因为Mongo不允许超过4MB.

当我运行时,memory_get_usage()在调用findOne()之前,它只有大约4MB.所以findOne()似乎已经消耗了其他的60MB.这是内存泄漏还是存储在Mongo中的设计缺陷?

我的PHP Mongo驱动是最新的1.26

如果您可以发布正在运行的确切代码,这将是有帮助的.这很可能是你的代码,但是有一个机会,它可能是Mongo PHP驱动程序的一个bug.最新版本的驱动程序(1.2.9)似乎是从以前版本的倒退.我自己在驱动程序中发现一个错误,导致PHP在连接超时时出现故障:o在与10gen开发人员的对话中,我向我透露,PHP驱动程序是所有语言中最不成熟的,但我被告知他们刚刚聘请了PHP开发人员,所以司机应该很快得到一些爱.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...