新的 SQL/IIS 设置的最佳实施?

新的 SQL/IIS 设置的最佳实施?

我们需要实施一个新的 MS-SQL/IIS 服务器,用于内部提供内联网页面服务。目前,我们平均每秒的点击量为 22 次,但每个请求都相当小。

您推荐的服务器配置是什么样的?

a) 单个服务器,同时运行两个应用程序
b) 两个物理服务器,每个应用程序一个
c) 两个 VMware 服务器,每个应用程序一个
d) 其他

另外,目前您会选择哪个版本的 Windows 和 MS-SQL,为什么?

答案1

您没有说明您期望 Intranet 应用程序的负载是多少。我猜除非您的公司规模很大,否则 Intranet 应用程序的负载不会那么大。在这种情况下,关键目标是可管理性。如果是这样,我会使用两个 Hyper-V VM。您可以先将它们放在同一台物理服务器上,如果负载过大,则将每个 VM 放在自己的服务器上。

将 IIS 和 SQL 放在不同的服务器上的优点是简单。您不必担心对一个服务所做的更改会影响另一个服务。

使用虚拟机而不是真实服务器的优势在于,你可以通过(影子)复制虚拟机所在的文件夹来备份虚拟机。这使得 SQL Server 服务包之类的东西很多没那么可怕。如果您有两台物理服务器,您甚至可以在两台服务器上保留同一台虚拟机的副本,这样如果您丢失了一台物理服务器,您可以快速在另一台物理服务器上启动虚拟机。这也使硬件升级变得更加容易。

我会为 IIS 使用 W2k8。是否值得使用 x64 尚有争议。我确实在最近的 IIS 服务器上使用了 x64,但最终我不得不在 32 位模式下运行 IIS,因为它所需的许多 COM 服务器仅在 x86 版本中可用。对于 SQL 服务器,如果您认为您可能需要 >4GB RAM,那么使用 x64 将为未来做好准备,老实说,对于 SQL Server 来说,内存永远不会太多。我可能会选择 SQL 2008,因为您最终必须这样做,而且现在这样做比以后升级要容易得多。

在虚拟磁盘上安装 SQL Server 可能会引起一些人的疑惑(或者它会在 SAN 上吗?)但我对我们的中型数据库的测试表明,性能影响几乎不可察觉。事实上,当我最近将我们的一个 SQL Server 移到 VM 时,它的运行速度提高了约 50%,这仅仅是因为与两年前的服务器相比,新主机服务器的磁盘速度有了大幅提升。

約翰·倫尼

答案2

我在一个非常活跃的制造环境中管理我们的 IIS 和 SQL 服务器实例。过去,我们总是使用“千篇一律”的 sql/iis 服务器,并将它们放置在不同的区域。开发人员进行更改或安装软件导致服务器问题的情况太多了,这显然也会影响您的 sql 服务器。话虽如此,我还是建议将应用程序拆分到单独的服务器上。我不知道在 VM 环境中使用 sql 是否会影响性能。我们在 VM 中构建了一个测试 sql 集群,它也可以与许多其他 VM 实例一起正常运行。

我们最近才开始将我们的 SQL 服务器整合到在 Windows Server 2003 上运行的 SQL 2005 故障转移群集中。它们位于 2 台物理服务器上,采用主动/被动配置,并带有 SAN 后端。如果我可以重来,我会使用 SQL 2008,这样我就不用担心升级了,并且会考虑将它们也放入 VM 中。

我们的 IIS 服务器存在于 VM 中的 Windows Server 2003 上的 Web 集群中。

我真正喜欢 VM 的一点是,如上所述,VM 实例可以随时拆卸和移动,而无需通知最终用户。例如,物理服务器可能租约到期,但 VM 实例不会租约到期。对于实际硬件,您可以在进行交换时将 VM 实例移动到另一个硬件上。

答案3

  • 两台物理服务器,每个应用程序一台(如果你有两台机器,就使用它们)
  • Windows Server 2008 SP2 64 位(因为它包含 IIS7)
  • SQL Server 2008 SP1 64位(管理工具比SQL Server 2005略好)

答案4

我会选择选项 B 或 C。将两者分开是最好的。如果您拥有良好的虚拟服务器设置,那么我认为没有理由不能使用虚拟服务器。您可能只是想知道您将获得多少页面请求和 SQL 请求以获得性能。

除非您的 SQL 框中有大量全文搜索,否则我会选择 SQL2008。否则,我会选择 SQL2005。Server 2008 和 SQL2008 可以很好地相互集成,所以我会选择它们。

—JFV

相关内容