欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP.NET線程相關(guān)配置

 更新時(shí)間:2012年12月04日 17:17:37   作者:  
ASP.NET 同一時(shí)刻只能發(fā)起的工作線程數(shù)量

1、(maxWorkerThreads * CPU邏輯數(shù)量)-minFreeThreads

比如2個(gè)CPU默認(rèn)配置maxWorkerThreads=100,minFreeThreads=176,則同時(shí)最大只能有24個(gè)工作線程。(這里不管  <system.net>

    <connectionManagement>

      <add address="*" maxconnection="8" />

    </connectionManagement>

 </system.net>這個(gè)配置的值,經(jīng)過(guò)測(cè)試,不管這里的maxconnection為多少,最終都是從上面的計(jì)算公式計(jì)算出來(lái)的)

 

2、maxconnection,這個(gè)值是每秒可以支持的線程數(shù)。(但實(shí)際每秒可以并行運(yùn)行的線程為(maxWorkerThreads * CPU邏輯數(shù)量)-minFreeThreads的結(jié)果),一般要求支持并發(fā)量,每個(gè)并發(fā)請(qǐng)求都很耗時(shí)的情況下,就需要設(shè)置該值為對(duì)應(yīng)的并發(fā)量(有這么多線程來(lái)處理),但線程多了切換也很耗服務(wù)器資源,實(shí)際情況往往不一定請(qǐng)求都很耗時(shí),所以根據(jù)實(shí)際情況調(diào)整。

 

3、maxWorkerThreads是最大工作線程,默認(rèn)100我覺(jué)得再非高并發(fā)下還是可以

 

4、minWorkerThreads是最小工作線程,由于托管線程啟動(dòng)比較耗時(shí),根據(jù)實(shí)驗(yàn)結(jié)果:40秒啟動(dòng)了18個(gè)線程,大概接近官方說(shuō)的每秒接近2個(gè)。由于線程開(kāi)銷比較耗時(shí),因此可以初始化到正常情況下的最低支持并發(fā)數(shù)量。比如我們平臺(tái)白天最少有10個(gè)并發(fā),則可以設(shè)置最小線程為5(2個(gè)CPU),或者服務(wù)端可能會(huì)遇到瞬間的超大并發(fā)量的請(qǐng)求,則可設(shè)置默認(rèn)最小工作線程更大一點(diǎn),可以快速處理請(qǐng)求。minWorkerThreads只對(duì)遞增線程有影響,不影響穩(wěn)定后的并發(fā)量。

 

5、最小空閑線程minFreeThreads參數(shù)的配置,有的官方資料建議配置成88*N的數(shù)量(如果maxWorkerThreads為100的情況),因?yàn)檎f(shuō)為了留足夠的空閑線程給系統(tǒng)用,但是經(jīng)過(guò)測(cè)試,發(fā)現(xiàn)高壓下,缺空閑線程真的空閑起來(lái)了,根本沒(méi)有用,因此我覺(jué)得應(yīng)該把這個(gè)值設(shè)置小一點(diǎn),比如設(shè)置為80(maxWorkerThreads為100的情況),就會(huì)留下100*2-80=120個(gè)最大連接,在高壓下就能建立120個(gè)線程,速度和效率會(huì)很快。

 

 

注意點(diǎn):

1、CPU邏輯數(shù)量:按照物理CPU數(shù)量,如果CPU是超線程(多核)會(huì)再乘以2

2、同一時(shí)間可處理量不代表每秒可處理量,比如同一時(shí)間可以處理20個(gè),可能每秒能處理200個(gè),因?yàn)槊總€(gè)請(qǐng)求只要0.1秒。

3、注意配置節(jié)點(diǎn)中processModel里的maxWorkerThreads、maxIoThreads和minWorkerThreads、minIoThreads都只配置單CPU邏輯數(shù)量的值,計(jì)算時(shí)會(huì)自動(dòng)乘以CPU邏輯數(shù)量。

4、配置節(jié)點(diǎn)包括:

System.web節(jié)點(diǎn)下:

    <processModel autoConfig="false"

    maxWorkerThreads = "100"

    maxIoThreads = "100"

    minWorkerThreads = "20"

    minIoThreads = "20"

/>

    <httpRuntime

 minFreeThreads="100"

 minLocalRequestFreeThreads="100"

/>

System.web同級(jí)節(jié)點(diǎn)下

 <system.net>

    <connectionManagement>

      <add address="*" maxconnection="8" />

    </connectionManagement>

 </system.net>

5、利用到的獲取參數(shù)代碼:

            string result = string.Empty;

            int maxWorkThread = 0;

            int maxIOThread = 0;

            int minWorkThread = 0;

            int minIOThread = 0;

            int workThread = 0;

            int completeThread = 0;

            ThreadPool.GetMaxThreads(out maxWorkThread, out maxIOThread);

            ThreadPool.GetMinThreads(out minWorkThread, out minIOThread);

            ThreadPool.GetAvailableThreads(out workThread, out completeThread);

 

            result = DateTime.Now.ToString() + ":" + "\r\n";

            result += "最大工作線程:" + maxWorkThread + ",最大IO線程:" + maxIOThread + "\r\n";

            result += "最小工作線程:" + minWorkThread + ",最小IO線程:" + minIOThread + "\r\n";

            result += "可用工作線程:" + workThread + ",可用IO線程:" + completeThread + "\r\n";

            result += "\r\n";

(把result記錄下來(lái),沒(méi)有用StringBuilder,臨時(shí)用的)

轉(zhuǎn)載:http://lawson.cnblogs.com/

相關(guān)文章

  • 為ASP.NET Core強(qiáng)類型配置對(duì)象添加驗(yàn)證的方法

    為ASP.NET Core強(qiáng)類型配置對(duì)象添加驗(yàn)證的方法

    這篇文章主要給大家介紹了關(guān)于如何為ASP.NET Core強(qiáng)類型配置對(duì)象添加驗(yàn)證的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • asp.net實(shí)現(xiàn)生成靜態(tài)頁(yè)并添加鏈接的方法

    asp.net實(shí)現(xiàn)生成靜態(tài)頁(yè)并添加鏈接的方法

    這篇文章主要介紹了asp.net實(shí)現(xiàn)生成靜態(tài)頁(yè)并添加鏈接的方法,非常實(shí)用的功能,需要的朋友可以參考下
    2014-07-07
  • C#后臺(tái)調(diào)用前臺(tái)javascript的五種方法小結(jié)

    C#后臺(tái)調(diào)用前臺(tái)javascript的五種方法小結(jié)

    于項(xiàng)目需要,用到其他項(xiàng)目組用VC開(kāi)發(fā)的組件,在web后臺(tái)代碼無(wú)法訪問(wèn)這個(gè)組件,所以只好通過(guò)后臺(tái)調(diào)用前臺(tái)的javascript,從而操作這個(gè)組件。
    2010-12-12
  • ASP.NET Core+Docker+Jenkins實(shí)現(xiàn)持續(xù)集成的完整實(shí)例

    ASP.NET Core+Docker+Jenkins實(shí)現(xiàn)持續(xù)集成的完整實(shí)例

    這篇文章主要給大家介紹了關(guān)于ASP.NET Core+Docker+Jenkins實(shí)現(xiàn)持續(xù)集成的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-05-05
  • MVC 5限制所有HTTP請(qǐng)求必須是POST方式

    MVC 5限制所有HTTP請(qǐng)求必須是POST方式

    這篇文章主要為大家詳細(xì)介紹了MVC 5限制所有HTTP請(qǐng)求必須是POST方式的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • ASP.NET 圖片加水印防盜鏈實(shí)現(xiàn)代碼

    ASP.NET 圖片加水印防盜鏈實(shí)現(xiàn)代碼

    ASP.NET 圖片加水印防盜鏈實(shí)現(xiàn)代碼,需要的朋友可以參考下。
    2011-12-12
  • ASP.NET Core利用UrlFirewall對(duì)請(qǐng)求進(jìn)行過(guò)濾的方法示例

    ASP.NET Core利用UrlFirewall對(duì)請(qǐng)求進(jìn)行過(guò)濾的方法示例

    這篇文章主要給大家介紹了關(guān)于ASP.NET Core利用UrlFirewall對(duì)請(qǐng)求進(jìn)行過(guò)濾的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-05-05
  • 聊一聊Asp.net過(guò)濾器Filter那一些事

    聊一聊Asp.net過(guò)濾器Filter那一些事

    這篇文章主要介紹了聊一聊Asp.net過(guò)濾器Filter那一些事,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 靈活掌握asp.net中g(shù)ridview控件的多種使用方法(下)

    靈活掌握asp.net中g(shù)ridview控件的多種使用方法(下)

    這篇文章繼續(xù)向大家推薦如何靈活掌握asp.net中g(shù)ridview控件的多種使用方法,感興趣的小伙伴們可以參考一下
    2015-11-11
  • 總結(jié)十條.NET異常處理建議

    總結(jié)十條.NET異常處理建議

    .NET中從始至終要緊記異常處理的策略:拋出具體的一個(gè)異常,而不是只拋出Exception類型的異常,這樣能方便我們捕獲對(duì)應(yīng)類型的異常。我們?cè)诰帉懘a時(shí)要注意考慮到應(yīng)用程序最差的情況;顯示有好的信息,并提供適當(dāng)?shù)墓芾韱T聯(lián)系信息
    2015-11-11

最新評(píng)論