5

我遇到了崩溃的 ION-Cube 模块的问题。该模块将 csv 数据导入我们的数据库,但如果 csv 文件太大(15+M),则结果是内部服务器错误。

支持人员告诉我,我的服务器没有足够的 RAM 来运行该模块。服务器内置了 1gb RAM,所以我编写了一个简单的测试脚本来检查 ini_set 是否有效。

<pre>
<?php 
function tryAlloc($megabyte){
    echo "try allocating {$megabyte} megabyte...";
    $dummy = str_repeat("-",1048576*$megabyte);
    echo "pass.";
    echo "Usage: " . memory_get_usage(true)/1048576; 
    echo " Peak: " . memory_get_peak_usage(true)/1048576;
    echo "\n";
}   
for($i=10;$i<1000;$i+=50){
    $limit = $i.'M';
    ini_set('memory_limit', $limit); 
    echo "set memory_limit to {$limit}\n"; 
    echo "memory limit is ". ini_get("memory_limit")."\n";
    tryAlloc($i-10);
}

?>
</pre>

这运行没有任何问题。这个测试有什么重大缺陷吗?我们在使用这个模块时遇到了很多问题,支持人员不断告诉我们问题出在我们的服务器上。-.-

PS:不,我无法访问 php.ini。不,我不能使用 .htaccess 来设置内存限制。不,我无法编辑修复/调试模块。

4

0 回答 0