【问题标题】:Disable or remove apc禁用或删除 apc
【发布时间】:2012-07-03 19:55:42
【问题描述】:

我在我的 ubuntu 11.04 linux 上安装了 APC,我想进行一些性能基准测试,看看与没有 APC 的 PHP 相比,速度提高了多少,但我不知道如何禁用/删除 APC。

我尝试清空我的 apc.ini 文件,但没有成功。在我第一次加载页面后,页面将存储在缓存中,第二次加载页面时,加载速度要快得多。

这是我用来测量时间的 PHP 文件。

<?php 
    function getTime() 
        { 
        $a = explode (' ',microtime()); 
        return(double) $a[0] + $a[1]; 
        } 
    $Start = getTime(); 
    ?>
    <?php require_once("includes/connection.php");?>
    <?php require_once("includes/functions.php");?>
    <?php
        find_selected_page(true);   
    ?>
    <?php require_once("includes/header.php");?>

        <table id="structure">
            <tr>
                <td id="navigation">
                    <?php echo navigation_public($sel_subject,true);
                      //            $sel_page is sent as a GLOBAL   so that we can reuse is in the page area
                    ?>
                </td>
                <td id="page">
                    <?php

                        if($sel_page!=NULL)
                        {
                            echo "<h2>".htmlentities($sel_page['menu_name'])."</h2>";
                            echo "<p>".strip_tags(nl2br($sel_page['content']),"<b><br><p><a>")."</p>";
                        }
                        else if($sel_subject!=NULL) 
                        {
                            echo "<h2>".$sel_subject['menu_name']."</h2>";
                        }
                        else 
                        {
                            echo "<h2>Welcome to Widget Corp</h2>";
                        }
                    ?>
                </td>   
            </tr>   
        </table>    
        <?php 
    $End = getTime(); 
    echo "Time taken = ".number_format(($End - $Start),3)." secs"; 
    ?>
    <?php require("includes/footer.php");?>

【问题讨论】:

  • 删除apc.ini文件应该够了,你清除那个文件后重启Apache了吗?
  • 我删除了它的内容。不是文件本身。是的,我使用 sudo /etc/init.d/apache2 restart 重新启动了我的 apache。

标签: php apache apc ubuntu-11.04


【解决方案1】:

改变:

extension=apc.so

作者:

;extension=apc.so

在:

/etc/php5/apache2/conf.d/apc.ini

然后重启 Apache 服务器:

apache2ctl graceful

【讨论】:

  • 对不起,我的页面速度似乎仍然提高了。当我在浏览器中加载 apc.php 时,它告诉我“没有可用的缓存信息。APC 似乎没有运行。”但是当我第一次加载页面时需要 0.059 秒,第二次和第三次等等大约需要 0.010 秒。
  • 您衡量网页性能的方法错误。您正在测量 PHP 运行脚本所花费的时间 - 但操作码缓存加快了 parse 脚本所花费的时间 - 生成的数据结构是相同的并且以相同的方式处理。如果要测量性能差异,请查看 apache 日志中的 %D - 或使用 firebug 等。
  • @DragosC。您必须激活另一个缓存以提高性能。 (很可能在您编写 Web 应用程序的任何系统中默认缓存)。
【解决方案2】:

apc.enabled 可以设置为 0 来禁用 php.ini 中的 APC 比重启你的网络服务器或 php-fpm。

【讨论】:

    【解决方案3】:

    你可以在root权限下输入以下命令:

    pecl uninstall apc
    

    【讨论】:

      【解决方案4】:

      您可以使用以下脚本,然后将其放在您的 php 文件的第一行,

      apc_clear_cache();
      

      【讨论】:

        【解决方案5】:

        如果你正在运行 apache:

        1. 在项目的根目录中编辑或创建一个 .htaccess 文件

        2. 将此行添加到文件中

          php_flag apc.cache_by_default 关闭

        3. 重启服务器

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-09-11
          • 1970-01-01
          • 2016-04-17
          • 2021-05-21
          • 1970-01-01
          相关资源
          最近更新 更多