我們正在yii中開發一個複雜UI的應用程序。我不是程序員,但注意到應用程序頁面加載時間似乎很慢。yii多個數據庫查詢或數組
我打開MySQL查詢日誌記錄,發現有很多重複查詢的例子,如「select x,y,z from table where id = 1
」,「select x,y,z from table where id = 2
」,「select x,y,z from table where id = 3
」。用單個「select x,y,z from table where id in (1,2,3)
」代替它們幾乎與運行單個查詢中的一個相同。總的來說,這樣做會減少加載時間的數量級。在我看來,就像查詢發生在一個循環內,而不是首先構造的where子句,所有數據都被檢索到一個數組,然後循環遍歷數組。
當我向編程團隊指出這一點時,我被告知在PHP中循環訪問數組的速度與執行單獨的SQL調用一樣慢。鑑於我在其他編程語言方面的經驗,我覺得這很難相信,看起來DAO會很輕鬆地做到這一點。另一個問題似乎是複雜的模型。任何意見讚賞。
它在我看來像大多數情況下10 - 20單個電話正在對數據庫進行,當1更難編碼一個就足夠了,並具有相同的持續時間作爲任何一個單一的電話。所以問題是編碼是否值得付出努力。我們正在談論html頁面需要的10-20行,而不是一堆不會立即使用的數據。每個頁面需要多次這樣的調用(總計可能是100次)。 – user3438020