2011-01-06 267 views
2

因此,我們有一個運行良好的drupal 6網站,但現在我們要爲它準備一個很多的流量,所以下一步是讓2個Web服務器運行相同的站點(數據庫已經運行在一個單獨的服務器上),然後使用另一臺服務器來執行這兩者之間的負載平衡。因此,我昨天鏡像了原始drupal服務器的文件(運行於www.example.com)到新的服務器(運行在允許說123.123.123.123 - 只是一個IP,沒有域),比編輯第二個的settings.php文件,以確保基地址是123.123.123.123。Drupal負載平衡

一旦我瀏覽到123.123.123.123來測試網站的鏡像是否正常工作,我有一個空白頁..看到源代碼,基本結構在那裏,但沒有內容,CSS指向到正確的地方,但仍然沒有顯示..我決定瀏覽到123.123.123.123/admin/,看看我能做些什麼..去了網站的性能和清除緩存,沒有做一件事,但後來我注意到原來的Drupal現在顯示空白...所以我去了www.example.com/admin/,也清除了緩存,網站回來了,但它似乎菜單路由器被摧毀,因爲我到處「找不到頁面」。所以我去模塊頁面,並點擊保存跳躍,它會重建菜單路由器。它取得了訣竅,網站恢復了在線並且運行良好。

很顯然,我停止閒逛與123.123.123.123,並決定是時候來問一些專家提供的幫助...

我到底做錯了什麼?任何幫助將不勝感激!!

朱利安

+0

如果您的負載均衡設置爲完全透明,則不得更改第二臺計算機上的基本URL。 example.com指向您的負載平衡器,並將請求轉發給您的任何服務器。他們每個人都應該使用example.com爲鏈接和資源建立URL。然後,如果客戶端請求這些URL,它再次擊中負載平衡器。也許你需要粘性會話,並且可能需要在所有服務器(NFS)之間共享的文件夾(保存上傳文件的位置)。 – rik 2011-01-06 15:31:30

+0

感謝您的回覆!關於上傳文件的文件夾,它已經安裝在兩臺服務器上的NAS上,因此沒有問題。負載平衡器還沒有安裝,現在我只想測試我的drupal站點的鏡像副本,看看它是否工作,並從那裏繼續..點是我沒有得到任何內容..我的意思是,兩臺服務器有相同的文件和相同的配置,是什麼導致一個沒有檢索的內容,爲什麼它會弄亂菜單路由器......? – Julien 2011-01-06 20:48:25

回答

3

我不認爲開箱你可以用D6做到這一點。

有幾件事會讓你失望。

  • 設置存儲在數據庫中,所以如果您的服務器不相同,一臺服務器將無法工作。
  • 數據庫未設置爲與多個訪問它的服務器一起使用。這可能會導致競爭條件或死鎖。
  • 上傳或生成的文件將不會鏡像在兩臺服務器上,因此文件將丟失。

也許還有其他的東西,但這足以讓我們繼續。

所以,你有兩個選擇:

  • 去的東西,如pressflow這是D6兼容,並且具有對鏡像服務器的工作選擇。
  • 配置您的服務器以處理負載。

配置您的服務器可能是一個很好的起點。這裏有一些提示

  • 確保Drupal的緩存被打開
  • 使用OptCode中緩存像APC,看到一些基準here
  • 安裝緩存路由器模塊使用APC爲Drupal的緩存
  • 安裝增強模塊

有深入的文章更加here

我建議閱讀文章,並在一臺服務器上做所有事情。儘管有可能使用2臺甚至200臺服務器,但它增加了系統的複雜性。