美文网首页
关于php内存溢出的问题

关于php内存溢出的问题

作者: gogocheng | 来源:发表于2018-05-18 14:29 被阅读0次

今天一上班,发现维护的网站除了问题,看了debug之后,总是出现
Fatal error: Out of memory (allocated 243007488) (tried to allocate 36 bytes)
上网查了后看到是php在执行代码时,内存不够。随机修改php.ini中的memory_limit的值,设置成512。
重启php,测试还是失败,程序还是报之前的错。之后查看了代码和数据库,发现在控制器的方法有一个全表查询的代码,导致内存溢出。

$ret = Db::name('locus') -> select();
$time = array();
foreach ($ret as $key => $value){
      $time[] = $value['time'];
      if(strtotime($time[$key]) == false){
            Db::name('locus') ->where('time','=',"$time[$key]") ->delete();
      }
}
上面这个代码完全是从全表来查,数据量很大。
删除这一段代码,测试成功。

从以上可以得出,代码中一定要避免大数据量的查询,在条件允许的条件下可以执行。要么做严谨的try catch,要么去分表,这样保证数据的正常使用。

相关文章

  • 关于php内存溢出的问题

    今天一上班,发现维护的网站除了问题,看了debug之后,总是出现Fatal error: Out of memor...

  • PHPexcel溢出

    使用PHPExcel导出文件,会出现由于文件体积问题导致PHP内存溢出,需要对PHPExcel的参数优化。文件过大...

  • Android面试 内存泄漏连环炮

    面试问题 什么是内存泄露,什么是内存溢出 什么情况下会造成堆溢出、栈溢出 常见造成内存泄露的情况 常见造成内存溢出...

  • Java 内存管理

    Java可以自动管理内存,比C/C++要方便的多, 但是实际Java 也会出现内存溢出的问题。 关于Java的内存...

  • Android性能优化-方法区导致内存问题实例分析

    说到Android内存优化,网上相关资料主要是关于内存泄露和内存溢出,基本都是针对堆内存问题进行分析,很少有关注方...

  • 关于内存溢出

    你是否会头疼一下问题 线上CPU突然飙升,领导让你排查,心慌怎么办? 线上发布之后内存升高,出现了FGC怎么分析?...

  • Bitmap加载、缓存机制

    在Android开发中经常会遇到关于图片加载、缓存的问题,经常会遇到内存溢出OOM,Android对单个应用内存加...

  • OC内存管理

    内存管理的方式 为什么要管理内存 内存问题体现在两个-----内存溢出、野指针异常。 内部溢出 野指针异常 内存管...

  • java内存溢出和内存泄漏

    基本上任何面试都会涉及到的问题,只要问到关于内存的问题,肯定会问一下这个问题,所以今天专门来说一下关于内存溢出的问...

  • Android常见内存泄露,学会这六招大大优化APP性能

    ​很多开发者都知道,在面试的时候会经常被问到内存泄露和内存溢出的问题。 内存溢出(Out Of Memory,简称...

网友评论

      本文标题:关于php内存溢出的问题

      本文链接:https://www.haomeiwen.com/subject/ayjtdftx.html