2009-04-22 121 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)。我想这对虚拟环境会有很大的帮助。当然很贵。