2012-08-06 105 views
7

我希望有人可以幫助我解決這個Drupal 7問題。我注意到,當我輸入「第一次」的站點地址時,加載時間非常緩慢。大約需要20(平均)秒才能開始加載文件並顯示內容。喜歡它有一些延遲。然而,在那段時間之後,它非常快速,一切都很好。一旦頁面被加載,我們可以快速刷新它們,不會有任何延遲。Drupal 7對「第一次加載」太慢

我附加圖片以查看Chrome的網絡瀑布。

謝謝大家。

圖片:http://i.stack.imgur.com/vuejk.png(看看第二行)

[更新]我用的php-APC,但仍然有同樣的問題。

+0

似乎你需要使用一些緩存或CDN來避免在第一視圖中長時間等待。您的網頁本身非常長,表示數據庫問題,可能 – 2012-08-06 13:17:05

+0

您正在使用外部數據庫嗎?有可能dns解析器不起作用。 – frustratedtech 2012-08-06 17:32:43

+0

查看http://drupal.stackexchange.com/questions/36147/performance-problem-delay-on-first-request獲取可能導致問題的一個明確列表 – Clive 2012-08-06 17:53:33

回答

6

這是(很有可能),因爲Drupal Cron任務每隔幾小時/天運行(取決於設置)。然後Drupal執行所有排隊的cron作業..這可能需要很長時間。

看一看this drupal.stackoverflow頁面。

E:而且,這個調整可能會有幫助,但我還沒有嘗試過這個自己:http://drupal.org/node/1576686

2

關閉生產Update Manager模塊。當Cron運行時,它會檢查需要時間的更新。通過僅在開發網站(Dev,Staging等)上啓用此模塊節省時間。生產者不需要花時間在這方面。

0

看看你在你的網站上有什麼部分。如果在那裏有很多@import語句,那麼最有可能在前端而不是在後端的問題。

Drupal默認使用很多.css和.js文件。瀏覽器只能在的所有.css和.js文件的頭部部分被下載後開始繪製您請求的頁面。

@import的問題是您的瀏覽器一次只能下載一個css文件。與標籤不同的情況。在這種情況下可以並行下載Css文件,這意味着更快。

第二次訪問網站css和js文件從瀏覽器緩存中加載,這解釋了爲什麼頁面加載速度更快。

建議的解決方法: 轉到管理/設置/性能使CSS和JS聚集。

2

我知道這是一個老問題,但這裏是我的解決方案。 發生這種情況的網站不會產生大量流量,並且服務器上的站點應用程序池會在指定的時間段後自動關閉(我相信默認值爲20分鐘)。因此,經過這段時間後第一個訪問該網站的人將不得不等待應用程序池重新啓動,這可能需要一段時間在php網站上。 這也適用於玉米工作。核心玉米工作設置爲運行每個「n」個小工具,但只有當有人點擊該工地時才能運行。因此,在玉米設定的時間間隔後第一個人擊中該地點將不得不等待玉米作業運行。因此,對於生產場地,您應該對核心玉米作業進行鑽孔並手動運行或使用外部服務來運行玉米(通過玉米的外部網址)。 最好的解決方案是使用免費的外部服務,如Uptime Robot每隔5-10分鐘點擊一次您的網站,以保持連接的連貫性。

+0

關於應用程序池關閉會發生:使用** PHP-FPM **與_pm = ondemand_或使用** PHP-CGI **與_FcgidIdleTimeout_的值> 0。 – 2015-05-26 15:56:19