繁体   English   中英

SQL Server每秒可以处理多少个请求?

[英]How many requests can SQL Server handle per second?

我正在使用JMeter来测试我们的应用程序的性能。 但我发现当我从JMeter发送20个请求时,原因结果应该是在sql server中添加20条新记录,但我只找到5条新记录,这意味着SQL服务器丢弃其他请求(因为我带了一个日志) ,并确保插入新记录发送到sql server。)

有人有想法吗? SQL服务器每秒处理的请求阈值数是多少? 或者我需要做一些配置吗?

是的,在我的应用程序中,我尝试过,但似乎只接受了5个请求,我不知道如何配置,然后它可以接受更多。

我不相信每秒的nr请求直接关联到SQL服务器丢弃你的插入。 也许有一个应用程序逻辑错误回滚或无法提交插入。 或者应用程序无法处理并发并插入违反约束的数据。 我也检查服务器日志中的死锁。

使用SQL事件探查器或LINQ数据上下文进行日志记录,以查看实际发送到服务器的内容,然后确定问题所在。

像这样启用数据上下文日志:

datacontext.Log = Console.Out;

作为旁注,我在SQL Server中每秒处理10 000个事务,所以我不认为这是问题所在。

这非常依赖于您正在执行的查询类型。 您可以有许多查询请求已存在于缓冲区中的数据,因此不需要磁盘读取访问,或者您可以进行读取,这实际上需要磁盘访问。 如果数据库很小并且你有足够的内存,那么你可能始终拥有内存中的所有数据 - 访问速度非常快,你可能会得到100多个查询/秒。 如果您需要读取磁盘,则依赖于您的硬件。 我选择了配备UltraSCSI-160驱动器的UltraSCSI-160控制器,这是PC类型平台上最快的选择。 我每晚处理大约75,000条记录(它们从另一台服务器下载)。 对于我处理的每条记录,程序会进行大约4-10次查询,以便将新记录放入正确的“插槽”中。 整个过程大约需要3分钟。 我在850 MHz AMD Athlon机器上运行它,内存为768 MB。 希望这能给你一些关于速度的指示。

要获得SQL Server和其他RDBMS的基准测试,请访问Processing Performance Council Web

您还可以使用Sql Server配置文件来检查查询的执行方式

这是一个老案例研究,现在有2017年,2019年我等着看会发生什么

https://blogs.msdn.microsoft.com/sqlcat/2016/10/26/how-bwin-is-using-sql-server-2016-in-memory-oltp-to-achieve-unprecedented-performance-and-规模/

SQL Server 2016 1 200 000批请求/秒内存优化表,支持LOB,本机编译存储过程



在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM