PHP Fatal error: Allowed memory size of xxx xxx xxx bytes exhausted

无论是插入大量数据或者查询大量数据时,都可能因为数据量太大而出现上面的问题。

首先肯定使用memory_get_usage()进行监控,然后通过优化查询,如使用完及时的unset()变量,或者置为null。将数量大的查询分解为多次较小的查询等等。

使用上面这些并不能带来明显的内存降低。特别是将数量大的查询分解为多次小的查询时,每一次查询后内存依然在线性增加。这时可以会想到使用无缓冲的查询(unbuffered queries)。这是一条正确的道路,但是如何在doctrine下面使用无缓冲查询呢?

经过查询还是没有找到实现无缓冲查询的方式,那只能退而求其次,使用PDO查询吧!

$conn = $this->getDoctrine()->getManager()->getConnection()->getWra‌​ppedConnection()
$conn->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);

$conn就是个PDO对象,然后就可以使用上面的优化方法了,特别是将数据分解为多次的小查询进行操作!

转载于:https://www.cnblogs.com/furzoom/p/7710164.html

使用doctrine的内存耗尽解决办法相关推荐

  1. unity3D缓存文件占C盘内存,解决办法

    unity3D占C盘内存,解决办法: ①打开unity3D,Edit-Preference-GI Cache ②勾上Custom Cache Location后,会出现Cache Folder Loc ...

  2. android手游内存不足,安卓手机内存不足解决办法

    大家好,我是智能客服时间君,上述问题将由我为大家进行解答. 安卓手机内存不足解决办法: 1.将已经安装过的安卓程序的缓存文件和下载文件都清理掉. 2.卸载掉那些使用频率非常低的应用程序,这样也有利于很 ...

  3. Tomcat内存溢出解决办法

    工作中,Tomcat内存溢出遇到两次了,就在网上找了些资料,将解决办法分享一下:   使用Java程序从数据库中查询大量的数据时出现异常: java.lang.OutOfMemoryError: Ja ...

  4. java 大数据处理之内存溢出解决办法(一)

    http://www.cnblogs.com/a757956132/p/4644910.html http://my.oschina.net/songhongxu/blog/209951 一.内存溢出 ...

  5. java 大数据处理之内存溢出解决办法

    因项目中需要查询大量数据,所以导致jvm内存溢出,发现这篇博文不错,转发来共同学习 原文地址:https://www.cnblogs.com/a757956132/p/4644910.html 一.内 ...

  6. Elasticsearch锁定内存失败解决办法

    一.环境 CentOS 7.8: Elasticsearch 6.6.0: 二.问题描述 在使用配置"bootstrap.memory_lock: true"锁定内存时,ES启动失 ...

  7. 赛门铁克企业版中DOscan和Rtvscan进程占用大量内存的解决办法

    windows 2003 32位安装 赛门铁克(Symantec Antivirus) V10.1.4.4000 简体中文企业版 内存占用在240m Symantec 官方已放出解决方案,将Defwa ...

  8. 云服务器内存不够解决办法

    今天发现之前买的阿里云的服务器发现2G内存只有0.2可以用了,大致解决办法如下: 方法一 首先:free -m 命里查看内存使用情况: total--总物理内存 ,total=used+free us ...

  9. ant-design-pro使用umi build打包内存溢出解决办法

    1.内存溢出错误提示 FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript hea ...

  10. java大文件下载内存溢出解决办法

    第一种解决办法内存够用的情况 启动时设置-Xmx的值大一点 比如2G. 第二种办法代码中使用缓冲流的方式,如果是本地文件就更好,如果是还需要再去文件服务器中下载一次也行. 例子: private vo ...

最新文章

  1. 利用PCHunter结束各种进程
  2. 使用Docker for Windows初体验
  3. HDU 2177HDU 2176
  4. 排列组合十一个性质公式及证明,错排数公式及证明
  5. 【SDOI 2014】数表
  6. js map 只输出key_Vue.js轮播库热门精选
  7. vb net的定时循环_Python3-定时任务的四种实现方式
  8. Spring Boot 学习系列(04)—分而治之,多module打包
  9. matlab2014a vs2015,Matlab2014a使用VS2015混合编译
  10. 王换招计算机组成与设计pdf,计算机组成原理答案(唐朔飞).pdf
  11. 音量控制 单片机c 语言,(封贴)请大神代写音响音量控制程序(有偿代写)单片机加TDA7313控制...
  12. 5G无线关键技术 — 低时延高可靠物联网设计
  13. Spring项目启动时Error creating bean with name ‘xxxxxx‘: Bean with name ‘xxxxxx‘ has been injected into ot
  14. A Pareto-Efficient Algorithm for Multiple Objective Optimization in E-Commerce Recommendation阅读翻译
  15. python实现归结演绎推理_归结演绎推理
  16. Camunda/Flowable/Activiti技术发展史/盘古BPM框架对比最新版
  17. 安装protobuf可能遇到的问题
  18. Loongson2_龙芯灵珑9S2A_usb或硬盘方式安装debian6 [刘工版]
  19. Qt QPushButton水晶按钮样式例子
  20. HTML中的src、href

热门文章

  1. 滑动门套滑动门css,CSS选项卡、滑动门代码
  2. Microsoft Visual C++ 2008 SP1 Redistributable Package (VC2008运行库)
  3. 电脑版微信发消息转圈圈
  4. python云计算1_python云计算服务器
  5. 4775电子书免费链接
  6. 参加2022年7月PMP考试后感受
  7. 2000-2019全国各省分品种能源消费量
  8. Java菜鸟教程 if语句和switch语句
  9. 简析三种近场通信及其未来发展趋势
  10. 如何将dwg文件转成kml文件