1. Allowed memory size of 8388608 bytes exhausted
出现原因:脚本运行超过最大运行时间
解决方法:1 ) 修改 php.ini 文件。将memory_limit 由默认值改成合适的大小,重启服务器。
2)在脚本中加入 ini_set("memory_limit","100M");
注意:为了系统的其它资源的正常使用 请您不要将 memory_limit设置太大,其中-1为不限
2. max_allowed_packet 的问题。
出现原因:MySQL会根据配置文件会限制server接受的数据包的大小。如果写入大数据时,因为默认的配置太小,插入和更新操作会因为 max_allowed_packet 参数限制,而导致失败。
解决方法:1)修改配置文件
[mysqld]
max_allowed_packet = 100M
2)临时修改 重启失效
set global max_allowed_packet = 100 * 1024 * 1024;
mysql> show variables like 'max_allowed_packet';
+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 4194304 |
+--------------------+---------+
1 row in set (0.00 sec)
3. ab压力测试 apr_socket_connect(): 由于目标计算机积极拒绝,无法连接。 (730061)
找到apache/conf/httpd.conf文件,用文本编辑器打开找到这两行:
#Server-pool management (MPM specific)
#Include conf/extra/httpd-mpm.conf
把后面这行的注释去掉。
找到apache/conf/extra/httpd-mpm.conf文件,打开,找到:
<IfModule mpm_winnt_module>
ThreadsPerChild 150 //ThreadsPerChild 每个子进程的最大并发线程数。
MaxRequestsPerChild 0 //MaxRequestsPerChild 每个子进程允许处理的请求总数,该值设为0表示不限制请求总数(子进程永不结束)
</IfModule>
把上面的150调大,Windows下最大为1920.
重新启动Apache服务.