2011-11-03 157 views
1

我有一個問題,減緩了我的一些Ajax請求。jquery緩存php ajax請求

使用jquery我做了一個ajax調用php腳本,查詢數據庫運行一些腳本,然後返回數據。

由於即時查詢大量數據和格式,有時需要3-8秒才能返回並降低用戶體驗。

如何緩存我的php,以便它可以返回緩存結果並僅在用戶進行更改時刷新緩存。

還有一些querys基於用戶登錄返回不同的結果。所以我需要緩存php ajax請求/每個用戶。

回答

0

我的方法是使用Zend_Cache是​​緩存返回的代碼。樣品的工作流程是:

$cache = Zend_Cache::factory($frontendName, 
         $backendName, 
         $frontendOptions, 
         $backendOptions); 

$data = $cache->load('member-'.$id); 

if (false === $data) { 
    {.. process normally populating $data ..} 

    $cache->save($data, 'member-'.$id); 
} 

{.. return $data formatted ..} 

要刪除緩存的數據,如果其被更新:

$cache = Zend_Cache::factory($frontendName, 
         $backendName, 
         $frontendOptions, 
         $backendOptions); 

$cache->remove('member-'.$id); 

參考http://framework.zend.com/manual/en/zend.cache.html