Par*_*ney 2 php mysql performance
我有一个逐行读取数据馈送的过程,解析并将数据插入到MyISAM表中.当它第一次启动时,它会非常快,大约每秒1000条记录.随着时间的推移,它变得越来越慢,现在我们每180秒大约有1行.
该函数的一般语法是:
function parse($file) {
$handle = fopen($file, 'r');
while (!feof($handle)) {
$line = fgets($fileHandle, 1000);
switch (substr($line, 0, 2)) { //gets record type
case '01' :
//parse the record
//escapes some strings with mysql_real_escape_string()
mysql_query('INSERT INTO table VALUES ($a, $b, $c...');
case '02' :
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
正在解析的当前文件有几百万条记录.服务器似乎没有丢失内存空间.有人知道是什么原因导致这个过程变慢了吗?
它可能与必须经常写入索引有关.您已经在使用MyISAM,这将是我的第一个建议.
一些建议
| 归档时间: |
|
| 查看次数: |
1771 次 |
| 最近记录: |