2011-03-30 122 views
2

隨着我開發的新項目,我選擇了json-rpc方式,使用客戶端模板以及很多javascript東西。問題是 - 與PHP的Apache(實際上PHP分析JSON查詢)是相當緩慢。我每頁有大約20個查詢,並且需要很長時間才能加載所有內容。JSON-RPC和性能問題

我的夢想是讓它直接與tcp/ip協議連接到後端(用php編寫),但我知道這是不可能的(沒有閃光燈)。

您能否給我任何建議,如何提高此解決方案的速度?也許用nginx替換apache甚至寫專用的httpd可能有幫助?

回答

1

你的情況並不簡單,所以解決方案也不是微不足道的。

phpDaemon是一個高性能的真正的快速CGI解決方案。 使用phpDaemon,您的代碼將在沒有開銷的情況下運行,因此一旦初始化,腳本就可以以極高的速度處理大量請求。

2

如果你每頁做20個查詢,我懷疑一個更好的數據交換格式會幫助很多。除非你處理大量的JSON,否則我的猜測是,獲得性能提升的最簡單方法是減少查詢的數量(可能通過批量處理)。

一些其他的東西,可能會幫助:確保Apache在使用MinSpareServers,確保所有被gzip壓縮的JSON足夠的空閒處理(例如,使用mod_deflate),分析代碼,以驗證解碼JSON是實際上什麼是慢,時間不會進入,例如,一個緩慢的數據庫查詢。

+0

是的,HTTP請求相當昂貴。瀏覽器通常不能同時執行其中的很多功能。 – Krab 2011-03-30 18:36:14