同一台机器上的 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 连接问题
无法从同一主机上的Web应用程序泊坞窗访问docker托管的SQL Server