如果我想使用 php 阅读100 lines
,哪个更快?从MySql table
简单的Text File
?
问问题
130 次
5 回答
6
使用更适合你的东西。
对于 100 行和一次读取所有内容的操作,性能差异将非常小,根本不重要。
于 2012-11-21T19:09:03.670 回答
2
试试看:
$time_start = microtime();
$mysqli->query("SELECT * FROM TABLE LIMIT 100");
$time_end = microtime();
echo 'TIME: '.($time_end-$time_start).'<br>';
$time_start = microtime();
$fh = fopen("file.txt",'r');
$x=0;
while(($row = fgets($fh, 4096)) !== false) {
if($x>100){
break;
}
$x++;
}
fclose($fh);
$time_end = microtime();
echo 'TIME: '.($time_end-$time_start).'<br>';
在我看来,在服务器上定位文件、打开、运行和关闭会比拥有活动的数据库连接要慢。但是,我不确定。
于 2012-11-21T19:12:12.620 回答
0
去MySQL。当您将它与从文本文件中读取进行比较时,它会更快。
于 2012-11-21T19:07:30.657 回答
0
如果该文件仅包含 100 行(因此您基本上是从头到尾阅读它)并且您不必以某种方式对其进行过滤,那么从文件中读取会更快。
MySQL 也从文件中读取(某些内容也缓存在 RAM 中)。
既然你提到了 MySQL,我怀疑它并不是那么简单。如果它不只是使用 MySQL,你会很高兴;)
于 2012-11-21T19:10:54.980 回答
0
就像另一个人说的,差异应该是微乎其微的。如果您真的需要尽可能快的访问时间,MySQL HEAP(内存)表的返回速度应该比文件访问快得多。
于 2012-11-21T19:29:42.697 回答