2009-04-22 170 views
0

在具有1個應用程序服務器(IIS)和1個數據庫服務器(MSSQL)的Web應用程序體系結構中,如果必須選擇一臺服務器以在虛擬機中進行虛擬化,那麼它將是:web還是db?虛擬化數據庫服務器或Web服務器?

一般來說當然。

回答

1

我可能會根據應用程序服務器所需的計算量來決定,而不是數據庫完成的計算量/ io。

這樣說我會認爲大部分時間數據庫不應該被虛擬化。對於數據庫來說,虛擬化不是太熱,必須確保數據在磁盤上保持良好和安全,並且添加另一個抽象層對此沒有幫助。

1

如果您有兩臺物理服務器,則不需要進行虛擬化 - 爲IIS使用一臺服務器,爲數據庫使用一臺服務器。

如果您有一臺物理服務器,則無需虛擬化。如果我不得不選擇,它將是網絡服務器。通過在物理服務器上運行,數據庫可以在性能方面受益。如果Web服務器是虛擬化的,則可以快速輕鬆地克隆它以創建一組Web服務器。

1

藉助當今的虛擬機管理程序和最佳實踐,您可以虛擬化兩種基礎架構。在虛擬化數據庫基礎架構時,最好確保將數據庫安裝到基於SAN的系統上,以便IO性能不會成爲瓶頸。

就像所有事情都有正確和錯誤的做法一樣,但遵循供應商的最佳實踐和測試將使您能夠從VM實例中擠出最佳性能。

如果您想虛擬化整個基礎架構,各種各樣的供應商都有大量的白皮書和性能測試。

即使虛擬化再次成爲業界熱門話題,現在各家供應商免費提供虛擬化管理程序,但這並不意味着使用虛擬化是前進的方向。服務器整合是,性能可能提高 - YMMV

+2

來自供應商的白皮書。不是用戶。 – gbn 2009-04-22 05:38:37

2

當然網頁。

數據庫需要太多的IO帶寬+將實例或數據庫添加到單個實例更容易,而孤立的Web服務器則更受益。

類似的問題... "Run Sharepoint 2003 on VMWare?"。 Sharepoint只是一個帶有SQL Server後端的asp.net應用程序。

2

大多數虛擬環境的缺點是I/O,特別是磁盤。 SQL非常密集。我正在使用共享的虛擬主機,而慢速I/O正在讓我失望。

也就是說,微軟在Hyper-V上推行SQL。它是一個虛擬機管理程序,這意味着它在虛擬機和硬件之間是一個更薄的層,驅動程序是準本地的。以下是他們的白皮書:http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/SQL2008inHyperV2008.docx

對於SQL來說,您會失去〜10%的整體性能。好處是你可以將整個實例快速移動到另一個盒子,碰撞內存等。

另一件需要考慮的事情是英特爾的企業級SSD驅動器(X25-E)。我想這對虛擬環境會有很大的幫助。當然很貴。