我目前正在为我们的开发人员设置一个环境,但我遇到了一个问题。我们计划拥有 Crowd、JIRA、Confluence、Bamboo 等(全部由Atlassian提供;全部在 Windows Server 2008 上运行)。所有这些产品都需要一个后端数据库,即 Microsoft SQL Server 2008。
所以问题是:让 SQL Server 在来宾操作系统中运行(性能方面)是否可以,或者在这种环境中性能将不是最佳的?
我目前正在为我们的开发人员设置一个环境,但我遇到了一个问题。我们计划拥有 Crowd、JIRA、Confluence、Bamboo 等(全部由Atlassian提供;全部在 Windows Server 2008 上运行)。所有这些产品都需要一个后端数据库,即 Microsoft SQL Server 2008。
所以问题是:让 SQL Server 在来宾操作系统中运行(性能方面)是否可以,或者在这种环境中性能将不是最佳的?
只要 MS SQL 有足够的内存,它就可以在虚拟环境中正常运行。无论是在真实环境还是虚拟环境中,这都是一样的。如果您的开发人员虚拟机有足够的内存,那么应该没问题。
我有一个运行 SQL 2008 企业版的 VM,用于开发和 QA。
性能并不出色,但它可以提供相当大的负载。我们遇到了一些问题,主要是关于高性能读取,SQL 会抱怨校验和不正确并导致操作失败。
我建议使用更注重性能的东西,比如 ESX。
我们有一个运行 Hyper-V 服务器的开发服务器。它为 Server2008 Enterprise 提供服务,运行 SQL2008 没有任何问题。这是为 VM 提供大约 3GB 的内存。
我已经在 2008 Server VM 中运行 confluence 好几个月了,它的运行就像一个冠军。没有真正的问题,它看到适度的使用。数据库托管在专用 SQL 2005 服务器上的 vm 之外。但这是一个共享数据库服务器,它也托管许多其他应用程序。
我能给这个开发服务器的最好建议是:确保它有足够的内存。
您提到的所有 java/tomcat 应用程序都需要预先分配它们的内存空间,而 SQL 将吞噬其余的。我建议至少 3GB 的 RAM(最多 8GB)。每个 Atlassian 应用程序都需要 256-512MB 的 RAM,SQL 至少需要 1GB,然后操作系统也需要一点。
还要注意你的磁盘 IO,这取决于你的开发人员在做什么,这可能是一个严重的瓶颈。