2015-02-05 102 views
0

我使用此代碼,並在〜500-700ms的服務器響應。如果寫'返回'在創建Slim對象作爲$ app後,響應時間爲〜200-250ms。爲什麼這個框架工作很慢?我可以快點嗎?我使用Slim Framework。爲什麼服務器響應時間非常大?

require 'Slim/Slim.php'; 
    \Slim\Slim::registerAutoloader(); 
    $app = new \Slim\Slim(array(
     'debug' => true, 
     'templates.path' => './templates'  
     ));  
    $headerType = $app->request->headers->get('Accept'); 
    switch($headerType){   
     case "text/html": 
      $app->response->headers->set("Content-Type",'application/xml'); 
      echo $headerType; 
      break; 
     case "application/xml": 
      echo $headerType; 
      $app->response->headers->set("Content-Type",'application/xml'); 
      break; 
      case 'application/json': 
      default: 
      $app->response->headers->set("Content-Type",'application/json; charset=utf-8'); 
    } 

    $app->get('/modules/:id', function ($id) { 
     echo Modules::getJsonModule($id);  
    }); 

    $app->get('/countries/:id', function ($id) {  
     echo CountriesControls::getJsonCountry($id);   

    }); 

    $app->get('/modules/:id/childs', function ($id) { 
     echo Modules::getJsonChilds($id);  
    }); 

    $app->get('/', function() {      
    }); 

    $app->get('/modules/:id/summary', function ($id) {    
    }); 

    $app->run();  

回答

0

如果您在創建slim對象後立即返回,它不會有機會運行,這就是響應時間如此之快的原因。

如果你想要一個更快的響應網站,你需要看看你的應用程序是如何構建的。

我運行了幾個不同的Slim網站,我的響應時間從未超過250毫秒。我的服務器價格低於Digital Ocean的5美元/月。

幾件事情,幫幫忙,

緩存:

1)ETagging

2)上次修改

減少HTTP請求

最小化和CONCAT所有CSS和JS文件

http://docs.slimframework.com/#HTTP-Caching-Overview

工具,以幫助

YSlow的延伸到Chrome瀏覽器,它代表了一個偉大的開始到網頁應用程序性能調優。

+0

謝謝!我發現我的項目慢慢自動加載課程。優化後,響應時間小於150-200毫秒。我認爲這是正常的速度。 – hcuser 2015-02-05 13:41:42

+0

我仍然會使用YSlow來查看你的分數。它確實幫了很多忙。我也忘了在你的web服務器配置中提到,你應該啓用DEFLATE – geggleto 2015-02-05 13:43:22

相關問題