2009-06-11 66 views
1

我有3臺家用PC,每臺都安裝了2008 SQL Server Express實例......但現在只有一臺有我的數據庫,我也在該機器上運行一個應用程序,從數據庫請求一堆數據。2008 SQL Server Express負載平衡

我不知道一大堆有關服務器架構,但我已閱讀從微軟的網站如何在多臺服務器(http://msdn.microsoft.com/en-us/library/bb964743.aspx

我有我所有的查詢會通過存儲過程執行查詢一些導遊,所以如果所有更改都在查詢中,那麼我認爲這樣做不會很困難。我需要什麼來進行設置的最佳方式的一般信息,這裏有一些更多的細節:

  1. 我的電腦是有點弱,所以我試圖用盡可能多的我的家用電腦,儘可能的平衡負載。現在我只有一臺擁有該數據庫的PC,並且正在同一臺PC上運行一個應用程序。

  2. 我的數據庫大概是4GB。

    a。我有一個存儲proc,查找特定的行。

    b。我有幾個存儲過程使用臨時表來計算基於從大約20-30行獲得的數據的結果。

    c。我已經在我正在搜索的列上有一個索引。

  3. 我在同一臺PC上運行一個應用程序,創建大約500個實體,每個實體可以有大約50個節點,每個節點向數據庫請求數據,請求可以是任何單值存儲過程,或者他們可能是建立表的存儲過程(顯然後者會更慢)。節點的執行速度與數據庫處理負載的速度一樣快。

  4. 目前看起來像瓶頸是SQL服務器,所以我想分發負載到我的其他電腦。

而我的問題是:

  1. 如果我把數據庫中的其他電腦將是提高性能?

  2. 在這種情況下設置我的SQL Server的最佳方式是什麼?

  3. 其他建議/參考?有沒有更好的方法來解決我的問題?

FYI: 我不想買,我希望有一個軟件解決方案的任何硬件尚未...,我還等着看能不能從朋友處得到一個免費的服務器,但即使我得到一個更大的服務器,我仍然想知道如何執行負載平衡。

回答

3

購買服務器。認真。

大量的內存,RAID磁盤,服務器操作系統,沒有內存限制...

放大是最好向外擴展,尤其是在這個較低的水平。

+0

有一種可能性,我可以從我工作的一家公司獲得一個免費服務器(該公司發生了腹瀉,他們將要擺脫硬件),所以我不想投資,但我想嘗試擴展,直到我知道該服務器會發生什麼情況。 – Kiril 2009-06-11 20:25:12

2

其他建議/參考?有沒有更好的方法來解決我的問題?

恕我直言,扔硬件在它。在浪費時間去嘗試配置系統/軟件之前,總是在你至少可以描述爲「足夠」而不是「弱」的東西上運行。

0

你的問題很可能是由臨時表引起的IO。看看你是否可以購買更快的硬盤驅動器(或RAID硬盤驅動器設置)並將tempdb數據庫放置在那裏。對於您所描述的問題,您絕對不需要任何集羣設置或者多個只讀服務器。

目前,它看起來像瓶頸 是SQL服務器,所以我想 負載分配給我的其他電腦。

我很好奇,你是如何得出這個結論的?

+0

當我運行該應用程序時,如果我有多個服務器,它會等待每個節點執行查詢的時間太長,我希望查詢將以更快的速度執行,並且我的應用程序中的更多節點將以相同的數量進行處理的時間。 – Kiril 2009-06-11 20:22:49