2012-07-03 33 views
5

Tôi đã cài đặt APC trên Linux ubuntu 11.04 và tôi muốn tạo một số điểm chuẩn hiệu suất để xem cải thiện tốc độ trên PHP mà không có APC nhưng tôi không biết cách vô hiệu hóa/xóa APC.Vô hiệu hóa hoặc xóa apc

Tôi đã cố xóa các tệp apc.ini của mình nhưng tệp không hoạt động. Tuy nhiên sau khi tôi tải trang lần đầu tiên, trang sẽ được lưu trữ trong bộ nhớ cache và lần thứ hai tôi tải trang, trang sẽ tải nhanh hơn nhiều.

Đây là tệp PHP mà tôi sử dụng để đo thời gian.

<?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");?> 
+0

Loại bỏ các 'apc.ini' tệp là đủ, bạn đã khởi động lại Apache sau khi bạn xóa tệp đó chưa? – lanzz

+0

Tôi đã xóa nội dung của nó. Không phải tập tin. Và có tôi khởi động lại apache của tôi bằng cách sử dụng sudo /etc/init.d/apache2 khởi động lại. –

Trả lời

11

Thay đổi:

extension=apc.so 

bởi:

;extension=apc.so 

Trong:

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

Và khởi động lại Apache server:

apache2ctl graceful 
+0

Xin lỗi nhưng có vẻ như tốc độ của các trang của tôi vẫn được cải thiện. Khi tôi tải apc.php trong trình duyệt, nó cho tôi biết "Không có sẵn thông tin bộ nhớ cache. APC dường như không chạy." nhưng khi tôi tải một trang lần đầu tiên mất 0,059 giây và lần thứ hai và thứ ba và cứ thế mất khoảng 0,010 giây. –

+4

Phương pháp đo lường hiệu suất của các trang là ** sai **. Bạn đang đo thời gian PHP cần để chạy tập lệnh - nhưng bộ nhớ cache opcode tăng tốc thời gian thực hiện để ** phân tích cú pháp ** tập lệnh - cấu trúc dữ liệu kết quả giống nhau và được xử lý theo cùng một cách. Nếu bạn muốn đo sự khác biệt hiệu suất, hãy xem% D trong nhật ký apache - hoặc sử dụng firebug, v.v. – symcbean

+0

@DragosC. bạn phải có một bộ nhớ cache khác được kích hoạt để tạo hiệu ứng này. (rất có thể bộ nhớ đệm theo mặc định trong bất kỳ hệ thống nào bạn đang viết ứng dụng web của bạn). – Cesc

6

apc.enabled có thể được đặt thành 0 để tắt APC từ php.ini Khởi động lại máy chủ web hoặc php-fpm của bạn.

7

Bạn có thể nhập lệnh sau đây với sự cho phép root:

pecl uninstall apc 
0

bạn có thể sử dụng sau kịch bản sau đó đặt nó trên dòng 1 file php của bạn,

apc_clear_cache(); 
Các vấn đề liên quan