同一台机器上的 SQL Server Express,还是外部共享的 SQL Server Standard? (对于 ASP.NET 站点)

Posted

技术标签:

【中文标题】同一台机器上的 SQL Server Express,还是外部共享的 SQL Server Standard? (对于 ASP.NET 站点)【英文标题】:SQL Server Express on the same machine, or external shared SQL Server Standard? (for an ASP.NET site) 【发布时间】:2011-01-06 07:18:21 【问题描述】:

我要从一家著名的以 MS 为中心的网络托管公司注册专用虚拟机。虚拟机有 1 个 CPU 和 1GB 的 RAM。我将在其上运行一个 ASP.NET 网站 - 该网站非常简单(后端数据库上有几个表),但必须尽可能快。

对于数据库,我有两个选择: 1) 在我自己的虚拟机上安装 SQL Server Express。这个版本的空间/内存限制不是问题,因为数据库不存储文件和二进制数据,因此将保持很小。 2) 使用托管公司共享的SQL Server Standard 实例,理论上安装在强大的机器上。

哪个是最好的选择?我会选择 (1),但我担心在同一台机器上运行 Web 服务器 (iis/asp.net) SQL Server 会降低性能。想法?

【问题讨论】:

第一个想法 - 接受一些答案,以便我们知道您感谢帮助。 有一个很好的论据,这在服务器故障上会更好,因为它更多的是管理问题,而不是开发问题。 【参考方案1】:

如果您想优化性能并且您没有太多数据,那么您应该使用共享数据库并在客户端缓存您的数据。这有点复杂,并且有一点数据丢失的危险(例如在电源故障的情况下),但它绝对是最快的解决方案。

【讨论】:

【参考方案2】:

在同一台机器上运行 Web 服务器 (iis/asp.net) 和 SQL Server 会降低性能

它会这样做,但如果 VM 以低于 100% 的容量运行,则不会产生任何净影响。在有这样的选择的 IT 中,有一个非常简单的准则:保持简单。哪个更容易管理(包括更新和备份)?

【讨论】:

以上是关于同一台机器上的 SQL Server Express,还是外部共享的 SQL Server Standard? (对于 ASP.NET 站点)的主要内容,如果未能解决你的问题,请参考以下文章

Docker SQL Server 2017 上的 Linux 连接问题

dremio sql server 链接问题

使用 PDO 连接到 SQL Server 2008

无法从同一主机上的Web应用程序泊坞窗访问docker托管的SQL Server

如何在同一台机器上安装 Windows Server 2012 和 Ubuntu 16.04 桌面

同一台机器上的两个程序相互通信的最佳方式是啥