2012-02-21 95 views
1

我的ZF應用程序中有很多ajax請求。引導過程需要很長時間。 ZF應用程序中提高性能ajax請求的方法有哪些? 也許對Zend Framework實例有一個方法嗎?ZF應用程序中提高性能ajax請求的方法?

+0

MWOP的兩篇文章討論了服務API性能,但可能很容易應用於AJAX請求:[通過Zend框架公開服務API](http://mwop.net/blog/227-Exposing-Service-APIs-通過Zend框架),[用Zend框架構建RESTful服務](http://mwop.net/blog/228-Building-RESTful-Services-with-Zend-Framework) – 2012-02-22 03:32:07

+0

謝謝,是的,我有想法轉發阿賈克斯請求只接收此腳本所需的資源的腳本。 – Dmitro 2012-02-22 11:01:26

回答

1

自引導過程需要時間,這是事實,但您可以使用諸如Zend_Cache之類的工具來提高性能。例如,你可以引導你的配置文件,所以你不必在每次請求後加載它並解析。

您可以隨時將通過Ajax調用的php文件存儲在不同的服務器或不依賴於Zend Framework的不同路徑上。如果您將代碼與整個應用程序分開,那麼您的Ajax請求不會有任何重載。

請注意,如果您的Ajax請求需要組件(如Zend_Acl,Zend_Auth或任何前端控制器插件),則不應將Ajax文件與應用程序分開,而應將其保存到您的應用程序中。你可以最終在你的_init()操作中使用AjaxContext處理它們。

綜上所述:

  • 你需要什麼,Zend Framework提供(插件,路由,ACL等):你應該讓你的應用程序中的AJAX腳本。
  • 你不需要所有的東西:使單獨的ajax腳本!

而且,一個好的想法是超負荷在引導的run()方法和實例僅在你的AJAX腳本所需要的資源。

+0

是的,我緩存了我的配置。我不想單獨從ZF應用程序的bussines邏輯。所以我嘗試phpdaemon。它像基於libevent的nodejs一樣工作。它允許一次引導ZF應用程序。但是我遇到了一些問題,並且它的支持和文檔不好。 – Dmitro 2012-02-22 10:44:09

+0

你解決了你的問題btw? – Liyali 2012-04-04 04:56:26

+0

我決定用nodeJS和Redis重新打包這部分 – Dmitro 2012-04-10 13:36:07