4

不想听起来太愚蠢,SQL Express 是免费的,而且免费资源使其成为像我这样的初学者的不错选择。我知道它有局限性(阅读其他帖子),但恐怕这些数字对我来说意义不大。

  • 谁能给我关于它可以处理的用户数量的大致数字?我正在查看最多可能有 40-50 个用户,对一个简单的 8 表数据库执行 CRUD 操作。

我想我会经常查询我的数据库,以便我的用户可以生成报告,但我再次认为(希望)它们不会复杂或要求高 - 对用户名查询进行简单的选择和过滤。显然,我将运行这些过去的 StackOverflow 以查看是否可以更有效地编写它们(并查看有效查询的样子)。


感谢所有的评论。我对确保免费版本足够所需考虑的事项有了更好的理解——良好的编码实践、高效的查询和使用后关闭连接。

我相信我的用户会受到中等程度的影响,他们不应该生成太多数据,因为我会将我们捕获的内容限制在基础知识范围内。稍后我应该开发我的解决方案,我会向我的老板提及限制的事实,他们将决定是否支付或保持限制。

为问题中的有限信息和“回答我自己的问题”选项道歉,而不是回复你所有我认为这是最有效的。

4

5 回答 5

4

从您的问题来看,SQL Server Express 似乎可以满足您的需求。SQL Server Express 真正的实际限制在于它的最大数据库大小(每个数据库 4gb)、可用内存的最大大小(1GB IIRC)以及它无法扩展以使用多个处理器来提高处理速度和功率。

就处理 40-50 个用户而言,对于您的应用程序的大小(从您在问题中暗示的内容来看),使用 SQL Server Express 与 SQL Server 的“成熟”版本实际上没有(实际)区别。

只要您在创建 SQL Server 连接(即打开连接、执行查询并尽快再次关闭连接)以及利用内置连接池(如果您使用每次连接时使用相同的连接字符串)你应该没问题。

您可能遇到的最大问题是达到数据限制(每 db 4GB)而不是任何性能问题,但这显然在很大程度上取决于您的应用程序的性质和您的用户将生成的数据量。

于 2009-07-08T15:12:20.147 回答
3

我相信限制是它不使用多个处理器并且它有内存限制 - 只有 1 gig。

没有 SQL Server 代理,最大数据库大小为 4gig。

也没有 sql profiler - 当你想弄清楚你的数据库为什么会被破坏时,这会让你更加努力。

我不知道如果不查看应用程序旁边的数据和查询,怎么会有人说 30-40 个用户会很好。

很多人加快 sql 速度的重要方法是给它足够的内存,这样它就不必写入磁盘——这最终可能会成为你的瓶颈。

您只需要一个错误的查询,就可以让任何数据库崩溃。

http://en.wikipedia.org/wiki/SQL_Server_Express

于 2009-07-08T15:15:35.320 回答
1

它应该可以很好地处理负载。40-50 个用户不算什么。

我最担心的是这些用户可以生成多少数据。Express Edition 确实有一个相对较小的大小限制,因此如果您的应用程序使用数据库来处理文档存储之类的事情,您可能会遇到麻烦,并且可能需要考虑将这些文档移动到文件系统(甚至是单独的实例) .

此外,速成版的优点之一是它与付费版的底层引擎相同。如果您发现您的增长超出了 express 的承受能力,那么升级就相对轻松(考虑到如果您增长了那么多,那么您希望收入增长与之相匹配并且现在可以负担得起付费版本)。

于 2009-07-08T15:09:36.893 回答
0

你可以使用 AnjLab 的免费 sql express profiler 来分析 sql express

于 2010-06-10T13:21:21.087 回答