如何实现10万用户并发连接sql server数据库



如何实现10万用户并发连接sql server数据库?

我有一个场景,100000用户将登录到使用sql server作为后端的网站,在同一个表上执行插入。它实用吗?如何实现?应该如何设计数据库?

SQL Server可以处理大量插入行的用户。将会发生的情况是,用户将进行连接,检查他们的身份是否可以进行连接,以及他们是否具有正确的权限,然后插入,SQL Server将断开连接。一旦插入发生并且SQL Server返回了指示成功或失败的状态代码,用户就没有理由维护连接。

我已经成功地让大量用户对单个审计表执行了此操作,并且我不得不让审计表成为一个没有任何键的堆。通过这种方式,SQL Server只需将连续的行添加到连续的页面中,并且这种情况发生的速度足够快,插入操作就可以成功进行。不能保证插入会以这种方式发生(但在实践中确实发生了),而且它处理的数据量非常大。当然,您必须进行测试,看看您的安装是否能够处理您预期的卷。只要数据成功保存,数据的存储顺序并不重要。

我从未见过可以处理100000个活动会话的安装。锁的数量可能会超过任何可能的硬件。您可能还想从预期的机器中选择@@MAX_CONNECTIONS,这将指示,因为返回的数字将指示当前实例(理论上)可以处理的最大同时连接数。在SQL Server 2008和2012企业版上,返回的数字都是32767。

最新更新