php的Allowed memory size of 134217728 bytes exhausted问题解决办法

如果下载的源码需要作者授权,请更换源码。本站免费分享资源不会增加授权

php的Allowed memory size of 134217728 bytes exhausted问题解决办法

报错:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 128 bytes) in xxxx/mysqli_result.php on line 183

解析:
134217728/1024/1024 = 128

解决方案1:

通过ini_set函数修改配置选项值

ini_set(‘memory_limit’,’256M’); //升级为256M内存

解决方案2:

1、修改php.ini

修改php配置
vi /usr/local/php/etc/php.ini
memory_limit = 128 改成memory_limit = 256

php-fpm重启
/etc/init.d/php-fpm restart
重启Nginx
service nginx restart

PHP5中,对于memory_limit的设定已经从以往的8M扩大到128M的上限。

对于配置中的定义解释是: memory_limit = 128M ; Maximum amount of memory a script may consume (128MB) 最大单线程的独立内存使用量。

也就是一个web请求,给予线程最大的内存使用量的定义。

memory_limit的内存分配,标配是128M。一旦独立的线程超过了128M,那PHP会报错: Fatal error: Allowed memory size of 33554432 bytes对于8G内存的服务器,如果同时并发的响应达到50,每个都是128M的峰值,那估计也是服务器会卡死的时候。
尽量降低128M的内存配置,如果调整至64M,服务器的负载基本能下降一半左右,如果能调整至32M效果更好。但是对于应用的要求就更高,很多表建立初期就没有考虑到这个问题,如果你要采用memcache作为数据的存储,必须提前完成优化数据表的设计部署,降低独立线程PHP的内存使用量,服务器的响应和负载降低的就不仅仅是几个百分点的效果了。

本文由(壳先生)整理自网络,如转载请注明出处:https://www.mrshell.com;
本站发布的内容若侵犯到您的权益,请邮件联系 i@mrshell.com 删除,我们将及时处理!
===========================================================================

1. 本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行测试。
2. 本站资源仅供学习和交流使用,版权归资源原作者所有,请在下载后24小时之内自觉删除。
3. 不得使用于非法商业用途,商用请支持正版!不得违反国家法律,否则后果自负!
4. 若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关。
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

=================================================================

壳先生 » php的Allowed memory size of 134217728 bytes exhausted问题解决办法

发表评论

提供最优质的资源集合

立即查看 了解详情