自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SQL Server數(shù)據(jù)庫的線程和纖程的概念與管理

數(shù)據(jù)庫 SQL Server
本文主要向你介紹的是SQL Server數(shù)據(jù)庫的線程和纖程的概念,以及對(duì)線程和纖程進(jìn)行正確管理的實(shí)際操作步驟,以下就是相關(guān)內(nèi)容的詳細(xì)介紹。

此文章主要向大家介紹的是SQL Server數(shù)據(jù)庫的線程和纖程,其中主要包括SQL Server數(shù)據(jù)庫的線程和纖程的基本概念,SQL Server數(shù)據(jù)庫如何正確的對(duì)線程和纖程的管理進(jìn)行管理等相關(guān)內(nèi)容的介紹。

 一、基本概念

(一)線程

SQL Server 數(shù)據(jù)庫使用操作系統(tǒng)的線程來執(zhí)行并發(fā)任務(wù)。在不使用纖程的情況下,SQL Server將啟動(dòng)線程,并由OS將線程分配給cpu,線程管理由OS內(nèi)核控制,當(dāng)一個(gè)線程完成退出CPU,其他線程調(diào)度占用該CPU時(shí),將發(fā)生一個(gè)上下文切換,這個(gè)切換是在應(yīng)用程序的用戶模式和線程管理的內(nèi)核模式之間的切換,所以需要付出一定的代價(jià),應(yīng)當(dāng)盡量避免這種切換

(二)纖程

為了減少上下文切換,引入纖程的概念,可以在SQL Server中啟用纖程,纖程是線程的子模塊,纖程由運(yùn)行在用戶模式下的代碼管理,所以切換纖程比切換進(jìn)程的代價(jià)少的多,因?yàn)槔w程模式不需要在將用戶模式和內(nèi)核模式中切換,而切換線程則需要這種轉(zhuǎn)換。

(三)兩者的區(qū)別

SQL Server管理纖程的調(diào)度,而OS管理線程的調(diào)度;線程模式里 SQL Server為每個(gè)并發(fā)用戶創(chuàng)建配一個(gè)線程,而纖程模式中 SQL Server為每個(gè)CPU分配一個(gè)線程,并為每個(gè)并發(fā)用戶創(chuàng)建配一個(gè)纖程,一個(gè)線程中可以有多個(gè)纖程,纖程只在線程里切換,不用上下文切換

注意:SQL Server Personal Edition和 Desktop Edition不支持纖程模式;Win95,98不支持線程池

二、SQL Server數(shù)據(jù)庫對(duì)線程和纖程的管理

SQL Server既可以為用戶連接維護(hù)一個(gè)線程池,也可以維護(hù)一個(gè)纖程池(如果設(shè)置了纖程模式,則系統(tǒng)只維護(hù)纖程池,不在是線程池) 在連接池中,線程和纖程都看作工作纖程,并可以由max worker threads 選項(xiàng)來設(shè)置SQL Server可分配的線程或纖程的最大數(shù)目,一般采用默認(rèn)值255 。

當(dāng)一個(gè)語句需要SQL Server執(zhí)行時(shí):

(1)如果線程池里用空閑的線程,SQL Server將為該語句分配一個(gè)線程

(2)如果線程池中沒有可供使用的空閑線程并且沒有達(dá)到最大工作線程數(shù)量,SQL Server將為該命令創(chuàng)建新的工作線程

(3)如果到了最大線程使用數(shù)量并且沒有空閑的線程,則進(jìn)程必須等待其他處理完成后釋放一個(gè)線程

三、配置SQL Server線程纖程

(1)如何啟用纖程模式:

企業(yè)管理器->服務(wù)器屬性->處理器->使用windows nt 纖程 或者用 sp_configure 將lightweight pooling 設(shè)置為1

(2)max worker threads 選項(xiàng)

該選項(xiàng)配置SQL Server數(shù)據(jù)庫進(jìn)程的可用工作線程數(shù) 默認(rèn)值為 255

改變方法:

企業(yè)管理器->服務(wù)器屬性->處理器->最大工作線程或者用 sp_configure修改max worker threads

(3)affinity mask 選項(xiàng)

該選項(xiàng)在系統(tǒng)負(fù)荷過重時(shí)可以提高對(duì)稱多處理器系統(tǒng)的性能,將線程與特定的處理器相關(guān)聯(lián),并指定SQL Server數(shù)據(jù)庫使用的處理器

改變方法:

企業(yè)管理器->服務(wù)器屬性->處理器->處理器控制->選擇一或多個(gè)將親和力掩碼組合在一起的處理器或者用 sp_configure修改affinity mask

(4)max degree of parallelism 選項(xiàng)

該選項(xiàng)可以限制在并行計(jì)劃執(zhí)行中使用的處理器數(shù)量

改變方法:

企業(yè)管理器->服務(wù)器屬性->處理器->并行->選擇執(zhí)行并行查詢的處理器數(shù)量或者用 sp_configure修改max degree of parallelism。

【編輯推薦】

  1. 用SQL Server數(shù)據(jù)庫鎖來定時(shí)間的長(zhǎng)短方法
  2. 淺談SQL Server鎖粒
  3. SQL Server數(shù)據(jù)庫鎖的引入的緣由
  4. 正確解決SQL Server警報(bào)問題
  5. SQL Server數(shù)據(jù)庫的分布式數(shù)據(jù)庫系統(tǒng)的終極目標(biāo)

 

責(zé)任編輯:佚名 來源: 比特網(wǎng)
相關(guān)推薦

2010-07-07 14:57:25

SQL Server線

2010-07-20 10:34:51

SQL Server線

2010-07-08 16:00:51

SQL Server線

2010-11-08 13:04:36

SQL SERVER線

2010-11-08 13:15:13

SQL SERVER線

2023-11-17 11:36:59

協(xié)程纖程操作系統(tǒng)

2023-10-12 09:46:00

并發(fā)模型線程

2010-07-08 11:05:14

SQL Server數(shù)

2010-06-30 14:54:42

SQL Server

2010-07-05 13:29:56

2010-11-29 11:55:47

SYBASE數(shù)據(jù)庫

2010-07-21 14:11:36

SQL Server

2011-04-01 16:12:04

SQL Server數(shù)

2011-03-31 09:30:27

SQL Server數(shù)管理SQL

2023-10-11 07:39:58

Java虛擬線程

2010-07-15 17:28:50

SQL Server

2010-05-10 18:54:12

Oracle數(shù)據(jù)庫索引

2011-03-24 09:45:34

SQL Server數(shù)恢復(fù)

2011-03-24 09:07:11

SQL Server數(shù)備份

2011-03-24 09:24:08

SQL Server數(shù)還原
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)