首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Web服务器上运行SQL Server

在Web服务器上运行SQL Server
EN

Stack Overflow用户
提问于 2008-09-22 07:01:19
回答 7查看 6.6K关注 0票数 4

在您的bad服务器上运行SQL Server是好是坏,还是无关紧要?

我使用的是Server2008和SQL Server2005,但我认为这对这个问题并不重要。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2008-09-22 07:13:24

对于小站点来说,这并没有什么不同。然而,随着负载的增长,这种扩展真的很糟糕,而且比您想象的要快:

  • 数据库服务器建立在它们“拥有”服务器的前提之上。它们以内存换取速度,并且很容易将所有可用的内存用于内部缓存。
  • 一旦资源开始匮乏,分析就变得非常困难--很明显,IIS和SQL都受到了影响,不太清楚瓶颈在哪里。IIS需要CPU,SQL Server需要内存或CPU等等。
  • 无论你在代码中放了多少层,它都在同一个CPU上运行,因此一个单层的应用程序在这种情况下会运行得更好--开销更小--但它不会scale.
  • Security真的很糟糕,通常你会把SQL隔离在防火墙后面!

如果你能负担得起,花几块钱买一台第二台服务器可能更好,也许是使用PostgreSQL。一台IIS服务器和一台PostgreSQL的成本与在IIS + SQL server上差不多,因为许可成本……

票数 13
EN

Stack Overflow用户

发布于 2008-09-23 14:29:21

较大的商店可能不会认为这是最佳实践...但是,如果您不是每秒处理数百个请求,则可以将它们放在一个盒子中。

事实上,对于小型应用程序,您将在后端看到更好的性能,因为数据不必通过网络传输。这一切都与规模有关。

请记住,数据库服务器会消耗内存。这里有一个重要的经验教训:如果您决定在web服务器所在的同一台计算机上运行SQL Server2005(这就是您在问题中提到的设置),请确保进入Sql Server Management Studio并执行此

  1. 右键单击服务器实例,然后从左侧列表中单击properties
  2. Select 'memory‘。
  3. 将'maximum
  4. memory’更改为您的服务器可以承受的内存。

如果您不这样做,SQL Server最终将占用服务器的所有RAM并无限期地挂起它。这将导致您的服务器或多或少地停滞不前。如果您没有意识到这一点,故障排除可能会非常令人沮丧。

我已经这样做过好几次了。如果你拥有一家大公司的基础设施,而且它没有规模,你不会这么做,但它适用于很多事情。

票数 6
EN

Stack Overflow用户

发布于 2008-09-22 07:03:20

这真的归结于你的are服务器和你的sql服务器做了多少工作。

如果没有更多的信息,我怀疑你将得到任何有用的答案。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/113531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档