当前位置: 首页 > 面试题库 >

MySQL的PHP​​运行缓慢

禄源
2023-03-14
问题内容

(重要)编辑3: 单独运行testajax2.php而 不是
Ajax。持续时间大致相同,为1.02-1.03秒。所以我想这意味着问题出在PHP-
MySQL或XAMPP中?

当我通过phpMyAdmin查询运行它时,结果如下:显示第0-29行(总计约50行。查询耗时
0.0015秒 )。看来问题根本不在于Ajax,而可能在于PHP。我怎样才能解决这个问题?(我也刚刚编辑了问题标题。)

答案: 在位于以下位置的主机文件中添加以下行 ”C:\Windows\System32\drivers\etc”

   127.0.0.1 localhost

之前的问题:

jQuery Ajax的 最小持续时间至少为1秒,
这对正常吗?我试过$.get$.post$.getjson$.ajax({type:'POST'})$.ajax({type:'GET'})。正如我所说的,这是最低要求。甚至可能恶化到约3秒。我怀疑这是SQL查询,因为当我在phpMyAdmin中尝试它们时,结果显示得非常快。

如果查询非常简单并且表中只有2个元素,也将紧随其后的是1秒的最小值。我正在使用最新的XAMPP,我不知道这是否重要,但是我正在通过localhost和127.0.0.1访问文件。

我在本地环境中运行该文件的同一台笔记本电脑上。jQuery已更新。返回的值/数组是json_encoded。我正在使用mysqli。该数据库位于InnoDB中,并且其中只有大约五个表,并且几乎没有任何内容。这是一个非常简单的示例查询:

文件 index.php

    var test_id =2;
    testcall();
    function testcall(){
        $.ajax({
            url: 'testajax2.php',
            type: 'POST',
            data: {test_id: test_id},
            success: function(data){

            }
        });
    }

文件 testajax2.php

    $mysqli = new mysqli('localhost', 'root', '', 'testdb');
    $mysqli->set_charset("utf8");
    if(mysqli_connect_errno()) {
        echo "Connection Failed: " . mysqli_connect_errno();
        exit();
    }

    $testreceive = $_POST['test_id'];
    $query = "SELECT First_Name from tblperson";
    $result = $mysqli->query($query);
    $row = $result->fetch_all(MYSQLI_ASSOC);

    echo json_encode($row);

tblperson包含50条记录,并且只有四列。根据Firebug的说法,完成这项极其简单的任务花了1.03秒。我不确定它的真正含义,但是通过Firebug的“
网络”
选项卡查看时,该条完全是紫色的。0和1.03秒等待。+1.03秒和0接收。

如果我以json_encode($row)或寄出也没关系foreach($row as $value){ echo $value['First_Name']; }。仍将至少大约1秒。我已经在Chrome和Safari上进行过尝试,尽管我没有确切的时间长度,但我可以说大致相同。但是对于 没有SQL查询
的简单Ajax调用。如果我没记错的话,它很快。我会返回一个示例和持续时间输出。


问题答案:

在位于以下位置的主机文件中添加以下行: ”C:\Windows\System32\drivers\etc”

   127.0.0.1 localhost

这解决了我的问题。PHP-MySQL现在可以完成其任务,具体取决于20-500 ms之间的复杂程度。



 类似资料:
  • 问题内容: 创建新的网站数据库时,我有两个文件。第一个文件创建所有表。第二个文件填充一些默认记录。我想从PHP执行这些文件。我还将使用Zend_Framework,如果这将有助于完成此任务。 附加信息 我没有控制台访问权限 我正在尝试从我们的应用程序中自动生成网站。 解 使用… …我从来没有得到过有用的输出,但是在另一个线程上遵循了一些建议,最终使它们全部正常工作。我将命令切换为格式,而不是用来执

  • 使用以下代码: 我得到这个输出: 换句话说,执行需要30秒。机器是2015 Macbook Pro,Java 1.8.0_60。 为什么这需要这么长时间?

  • 问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 去年关闭。 我目前在开放源代码电子商务平台(www.oscmax.com)上工作,我正在尝试确定是否可以部署可以在平板电脑上运行的脱机版本。我原本希望使用iPad,但是事实证明这非常困难(不可能吗?) a)是否有人知道将在平板电脑上运行的AMP(Apach

  • 我得到以下错误: 警告:mysql_connect()[function.mysql connect]:用户“a5467268_andrew@”10.1的访问被拒绝。1.19“(使用密码:是)在/home/a5467268/public_html/andrew/fileupload中。php第2行

  • 我对Linux很陌生,仍在努力适应自己。我的工作环境设置得很好,安装了XAMPP、node、sublime等。但当我尝试运行laravel应用程序时,第一件让我抓狂的事情是我无法运行php。 我很困惑,因为我已经安装了XAMPP(我以为会为我完成这一切),但后来我只是在我的 /usr/bin中创建了一个符号链接到 /opt/lampp/bin/php,一切都很好(我不确定这是否都是正确的,但它工作

  • 问题内容: 简单的说,我总是对PHP / MySQL缓冲查询和非缓冲查询之间的区别是,缓冲(默认)将所有数据加载到结果集变量中, 然后 您可以开始使用它们,而无缓冲则在以下位置加载行:一个时间。 假设您先运行然后进行了,它将包含所有行和补充信息,例如行数。因此,如果您在100MB的数据库上执行此操作,那么如果那里没有索引,则可能会占用约100MB的空间)。 但是,我遇到了这样的SO溢出问题,其中一