Loadrunner学习笔记

一般认为SQL Server包含四种Windows服务:MSSqlServer 是最常用的服务,一般的数据库功能都是由它提供的,例如文件管理、查询处理、数据存储等;DTC是分布式事务协调器,支持跨越两个或多个服务器的更新操作来保证事务的完整性;SQLServerAgent负责SQL Server 自动化工作,如果需要SQL Server 在指定时间执行某一个存储过程,就需要用到这个服务了;Search Service是全文查询服务,负责全文检索方面的工作。
 
一个实例就是一组服务(可能是所有服务,也可能是部分服务)。
 
每个 sql server实例都是一个单独的操作系统进程。每个实例都有可能必须处理来自用户的成千上万个并发请求。SQL Server 2000 实例使用 Microsoft Windows® 线程(有时是纤程)有效地管理这些并发任务。每个 SQL Server 2000 实例始终为系统进程运行多个线程。
 
工作线程数是由服务器配置选项 max worker threads 控制的。max worker threads 的默认设置值 255 (最小值10,最大值32767) 对大多数系统是最优的。然而,取决于系统配置,将 max worker threads 设置为一个稍小的值有时会提高性能。
当从客户端收到一批 Transact-SQL 语句时,如果现有的工作线程空闲,就会分配它来执行这个批处理。如果没有空闲的现有工作线程而且工作线程数少于 max worker threads,那么就会分配一个新的工作线程。如果没有空闲的工作线程而且已经达到 max worker threads,那么新的批处理就要一直等到现有工作线程完成其当前批处理任务而空闲为止。当工作线程数达到 max worker threads 时,SQL Server 显示如下消息:
工作线程限制 255 已经达到。
对所有工作线程进行分配,并不意味着 SQL Server 的性能会降低。通常,新的批处理等待空闲线程只需要很短的时间。分配更多的线程可能会降低性能,因为增加的工作需要在线程之间协调资源。
每个 SQL Server 实例都为用户连接维护一个线程池或纤程池。使用的线程越多,维护所需要的资源越多。该值太大反而会影响性能。
  当服务器的内存够多时,配制线程数量 = 最大连接数+5,这样能发挥最大的效率;
否则使用 配制线程数量<最大连接数,启用SQL SERVER的线程池来解决,如果还是数量 = 最大连接数+5,严重的损害服务器的性能。
 
服务器配置 lightweight pooling 选项控制 SQL Server 2000 实例是使用线程还是纤程。默认情况下,lightweight pooling 的设置为 0,在该设置下 SQL Server 实例对每个并发用户命令调度一个线程,直到到达 max worker threads 的值。如果 lightweight pooling 的设置为 1,那么 SQL Server 使用纤程而不是线程。这称为以纤程模式运行。在纤程模式下,SQL Server 实例为每个 CPU 分配一个线程,然后为每个并发用户命令分配一个纤程,最大可以达到 max worker threads 的值。SQL Server 实例在使用线程或纤程时使用相同的算法调度和同步任务。SQL Server 2000 个人版和 SQL Server 2000 Desktop Engine 不支持纤程。
 
 
归纳:
Sql server 对线程的使用也是动态根据需要增减,最大值也设置一个默认值225,对大多数情况下这个值是最优的,但减小该值也可能提高性能,根据实际情况决定。
 
对线程的配置(如下图):
 
对上图的说明〔联机文档〕:
  处理器
指定希望 Microsoft® SQL Server™ 实例使用的处理器。
最大工作线程
指定 SQL Server 进程可用工作线程的最大数目。
在 Windows 上提升 SQL Server 的优先级
指定 SQL Server 实例是否应当比同一计算机上运行的其它进程具有更高的优先级。默认值为 0,其优先级基数为 7。如果将该选项设置为 1,则 SQL Server 在 Microsoft Windows NT® 4.0 或 Windows® 2000 调度程序中以优先级基数 13 运行。建议只在 SQL Server 专用的 Windows NT 4.0 或 Windows 2000 系统上更改该默认值。
[提升sql server 进程的优先级会提高本实例进程的性能,但对其它应用程序和对没有提高优先级的实例的进程产生影响(如果该台服务器上同时运行多个实例的话)]
 
使用 Windows NT 纤程
指定希望 SQL Server 实例使用纤程而非线程。在纤程中,SQL Server 为每个 CPU 分配一个线程,然后为每个并发用户分配一个纤程,直到 max worker threads 值为止。此设置在重新启动服务器后生效。
使用所有可用的处理器
指定希望 SQL Server 将所有可用的处理器都用于并行执行查询。
使用处理器数
指定希望 SQL Server 用于并行执行查询的处理器数。
为允许查询并行执行须满足的最小查询计划阈值
指定 SQL Server 创建和执行并行计划的阈值。只有当同一查询的串行计划的估计执行成本高于此选项的设置值时,SQL Server 才会为该查询创建和执行并行计划。
查看或更改此选项卡上的选项的配置值。如果更改了这些值,单击'运行值'查看更改是否已生效。如果尚未生效,必须重新启动 SQL Server 实例才能使更改生效。
运行值
查看此选项卡上的选项的当前运行值。这些值为只读值。
 
 
(0)

相关推荐

  • 数据库中的实例名和数据库名有什么不同?

    一个数据库中包含存储真正数据的多个表结构,而一个实例包含多个数据库,一台服务器(硬件)可以包含多个实例. 每个实例是一个SQL Server安装的组件(或数据库引擎的程序,工具和相关程序).每个用户数 ...

  • 一则公报案例学习笔记:对修改股东出资期限应否适用资本多数决规则的思考|审判研究

    一.问题的提出 2021年第3期<最高人民法院公报案例>刊登了鸿大(上海)投资管理有限公司与姚锦城公司决议纠纷上诉案,裁判要旨为:"公司股东滥用控股地位,以多数决方式通过修改出资 ...

  • JAVA多线程学习笔记整理

    多线程: 三种创建方法 继承Thread类,以线程运行内容重写run方法,创建Thread对象并用start方法启动该线程. (匿名内部类) (Lambda表达式) 实现Runable接口,以线程运行 ...

  • 周哥学习笔记(2021.5.8)

    心理界限存在的意义,正是为了帮助人们控制情绪进入的量,不至于太过冷漠或太过投入,让我们保持一个合适的距离与外界互动. 人没有办法只通过吸收变得更美好和丰富,它必须通过大胆的碰撞和创造.如果不能保持足够 ...

  • 【学习笔记】控制角色移动的N种方法,但都离不开重复执行

    [学习笔记]控制角色移动的N种方法,但都离不开重复执行 今天我们讲一下控制角色移动的多种方法,因为缺少操作实例,希望课下同学们结合例子好好练习. 首先,我们说一下控制角色移动的多种方法.最比较常见的就 ...

  • 胡希恕伤寒论学习笔记——42

    42.太阳病,外证未解,脉浮弱者,当以汗解,宜桂枝汤. 字面意思是说:太阳病,外证依然存在,脉是浮弱的,治疗上依然需要通过出汗的方法,这时应该用桂枝汤一类的方剂. "宜"字说明不是 ...

  • 量柱擒涨停 - 量柱战法学习笔记(2)

    四.倍量战术 1.倍量的理解 [形态特征]:与前一个交易日比较高出1倍或1倍以上,就是倍量(4倍以上为发烧柱) ; [本质特征]:体现主力强势态度,主动(倍量阳/阴)买/卖盘吸筹坚决; [位置性质]: ...

  • 胡希恕伤寒论学习笔记——43

    43.太阳病,下之微喘者,表未解故也,桂枝加厚朴杏子汤主之. 桂枝加厚朴杏子汤方 桂枝三两 芍药三两 厚朴二两(炙,去皮) 杏仁五十枚(去皮尖)甘草二两(炙) 生姜三两(切)大枣十二枚(掰) 上七味, ...

  • 学习笔记:信息技术

    学习笔记:信息技术

  • 安全学习笔记

    安全学习笔记