我有一个ASP.NET应用程序(网站,类似目录)。预计不会有高负载(不超过50个并发用户,比如说,95%只是读取 - 它是一个网站),但它有一些特定的需求,因此我无法在共享主机上托管它,并转向托管虚拟服务器。配置是这样的 - 2 GHz核心(agregated 1:5),1024个专用RAM,30GB磁盘空间。它运行的是Windows Server 2008 R2 Web。
现在问题
在此虚拟机上安装和运行SQL Server 2008 R2 Express是个好主意吗?限制是可以的(无论如何我只有1个核心和1GB内存,每个数据库10 GB是完全正常的),但性能如何?我不希望它使用所有可用的内存,因为ASP.NET应用程序也需要一些因为密集的缓存(所以可能只有几百MB)。
我可以为SQL Express设置最大服务器内存(假设)500 MB,并期望公平的性能? (只有1个小型数据库 - 有一段时间它将低于500 MB,并且长时间低于1 GB)。
此外,我可以使用任何选项来最小化SQL Server express的内存占用/要求吗? (除了不安装报告服务,全文搜索和复制 - 我的应用程序中不需要这样做)
答案 0 :(得分:2)
1.在这个虚拟机上安装和运行SQL Server 2008 R2 Express是个好主意吗?
没有。 30gb的磁盘空间区域已经低于推荐用于windows的区域 - aql sql server无法提供帮助。最重要的是,你永远不会知道光盘子系统是多么糟糕,而快速光盘就是让广告成为可能。数据库性能很大程度上取决于光盘子系统的性能,并且非常糟糕地吸收非专业主机提供的虚拟光盘。
2.我可以为SQL Express设置最大服务器内存(假设)500 MB,并期望公平性能?
我可以在汽车上加载100公斤,这是合适的=取决于您做什么。对于10gb数据库来说,500mb可能或者可能不够,取决于usabe模式。
3.另外,我是否可以使用任何选项来最小化SQL的内存占用/要求 服务器快递?
这是完全没有hjow sql server的工作原理。数据库需要大内存才能将其用作缓存。最小化 - 确定。然后就是RAM而不是内存IOPS,这是一个更难获得的资源。
我个人认为生产服务器 - 甚至是vps--在便宜的笔记本电脑上功能强大得多,这是完全错误的做法。