九色成人免费视频_久久一区视频_视频一区国产精品_精品视频在线观看

始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

扼殺IIS服務器性能的十條規則

發布時間:  2012/8/9 15:28:03
 下面的每一條戒律都將有效地影響代碼的性能和可伸縮性。換句話說,盡可能不要照著戒律去做!下面,我將解釋如何破壞他們以便提高性能和可伸縮性。

1、應該分配和釋放多個對象

你應該盡量避免過量分配內存,因為內存分配可能是代價高昂的。釋放內存塊可能更昂貴,因為大多數分配算符總是企圖連接臨近的已釋放的內存塊成為更大的塊。直到Windows NT? 4.0 service pack 4.0,在多線程處理中,系統堆通常都運行得很糟。堆被一個全局鎖保護,并且在多處理器系統上是不可擴展的。

2.不應該考慮使用處理器高速緩存

大多數人都知道由虛擬內存子系統導致的hard 頁錯誤代價很高,最好避免。但是許多人認為其他內存訪問方法沒有什么區別。自從80486以后,這一觀點就不對了,F代的CPUs比RAM要快得多,RAM至少需要兩級內存緩存 ,高速L1 緩存能保存8KB數據和8KB指令,而較慢的L2 緩存能保存幾百KB的數據和代碼,這些數據和代碼混合在一起。L1 緩存中內存區域的一個引用需要一個時鐘周期,L2 緩存的引用需要4到7個時鐘周期,而主內存的引用需要許多個處理器時鐘周期。后一數字不久將會超過100個時鐘周期。在許多方面,緩存像一個小型的,高速的,虛擬內存系統。

至于和緩存有關的基本內存單元不是字節而是緩存列。Pentium 緩存列有32個字節寬。Alpha 緩存列有64個字節寬。這意味著在L1 緩存中只有512個slot給代碼和數據。如果多個數據一起使用(時間位置)而并不存儲在一起(空間位置),性能會很差。數組的空間位置很好,而相互連接的列表和其他基于指針的數據結構的位置往往很差。

把數據打包到同一個緩存列中通常會有利于提高性能,但是它也會破壞多處理器系統的性能。內存子系統很難協調處理器間的緩存。如果一個被所有處理器使用的只讀數據,和一個由一個處理器使用并頻繁更新的數據共享一個緩存 列,那么緩存將會花費很長時間更新這個緩存列的拷貝。這個Ping-Pong高速游戲通常被稱為"緩存 sloshing"。如果只讀數據在一個不同的緩存 列中,就可以避免sloshing。

對代碼進行空間優化比進行速度優化效率更高。代碼越少,代碼所占的頁也越少,這樣需要的運行設置和產生的頁錯誤也會更少,同時占據的緩存 列也會更少。然而,某些核心函數應該進行速度優化?梢岳胮rofiler去識別這些函數。

3.決不要緩存頻繁使用的數據。

軟件緩存可以被各種應用程序使用。當一個計算代價很高時,你會保存結果的一個拷貝。這是一個典型的時空折中方法:犧牲一些存儲空間以節省時間。如果做得好,這種方法可能非常有效。

你必須正確地進行緩存。如果緩存了錯誤數據,就會浪費存儲空間。如果緩存得太多,其他操作可以使用的內存將會很少。如果緩存得太少,效率又會很低,因為你必須重新計算被緩存 遺漏的數據。如果將時間敏感數據緩存得時間過長,這些數據將會過時。一般,服務器更關心的是速度而不是空間,所以他們要比桌面系統進行更多的緩存。一定要定期去除不用的緩存,否則將會有運行設置問題。

4.應該創建多個線程,越多越好。

調整服務器中起作用的線程數目是很重要的。如果線程是I/O-bound的,將會花費很多時間用來等待I/O的完成-一個被阻塞的線程就是一個不做任何有用工作的線程。加入額外的線程可以增加通量,但是加入過多的線程將會降低服務器的性能,因為上下文交換將會成為一個重大的overhead。上下文交換速度應該低的原因有三個:上下文交換是單純的overhead,對應用程序的工作沒有任何益處;上下文交換用盡了寶貴的時鐘周期;最糟的是,上下文交換將處理器的緩存填滿了沒用的數據,替換這些數據是代價高昂的。

有很多事情是依靠你的線程化結構的。每個客戶端一個線程是絕對不合適的。因為對于大量用戶端,它的擴展性不好。上下文交換變得難以忍受,Windows NT用盡了資源。線程池模型會工作得更好,在這種方法中一個工人線程池將處理一條請求列,因為Windows 2000提供了相應的APIs,如QueueUserWorkItem。


5.應該對數據結構使用全局鎖

使數據線程安全的最簡單方法是把它套上一把大鎖。為簡單起見,所有的東西都用同一把鎖。這種方法會有一個問題:序列化。為了得到鎖,每一個要處理數據的線程都必須排隊等候。如果線程被一把鎖阻塞,它沒有在做任何有用的事。當服務器的負載較輕時,這個問題并不常見,因為一次可能只有一個線程需要鎖。在負載很重的情況下,對鎖的激烈爭奪可能就會成為一個大問題。

設想在多車道高速公路上發生了一個意外事故,這條高速公路上的所有車輛都被轉向一條狹窄的道路。如果車輛很少,這一轉換對交通流的速率的影響可以忽略。如果車輛很多,當車輛慢慢并入那條單通道時,交通阻塞會延伸幾英里。

有幾種技術能夠減少鎖競爭。

· 不要過分保護,也就是說,不是非常必要不要鎖住數據。只有需要時才去持有鎖,而且時間不要過長。不要在大段代碼周圍或頻繁執行的代碼中沒必要地使用鎖,這一點很重要。

· 對數據進行分割,使它能夠用一套獨立的鎖保護。例如,一個符號表可以按標識符的第一個字母分割,這樣在修改名字以Q開頭的符號的值時,就不會去讀名字以H開頭的符號的值。

· 使用APIs的Interlocked 系列(InterlockedIncrement,InterlockedCompareExchangePointer等)自動修改數據而不需要鎖。

· 當數據不是經常被修改時可以使用多讀者/單作者(multi-reader/single-writer)鎖。你將獲得更好的并發性,盡管鎖操作的代價將更高并且你可能會冒餓死作者的危險。

· 在關鍵部分使用循環計數器。參見Windows NT 4.0 service pack 3中的SetCriticalSectionSpinCount API。

· 如果你不能得到鎖,使用TryEnterCriticalSection并做一些其他的有用的工作。

高競爭導致serialization,serialization導致降低CPU的利用率,這促使用戶加入更多的線程,結果事情變得更糟。
6.不必注意多處理器機器

你的代碼在多處理器系統上比在單處理器系統上運行得還要糟,這可能是件令人惡心的事。一個很自然的想法是,在一個N維系統上運行N次會更好。性能很差的原因是競爭:鎖競爭,總線競爭,和/或緩存列競爭。處理器都在是爭奪共享資源的所有權,而不是做更多的工作。

如果你一定要編寫多線程應用程序的話,你應該在多處理器盒上對你的應用程序進行強度測試和性能測試。單處理器系統通過時間分片地執行線程而提供一個并發性的假象。多處理器盒具有真正的并發性,競爭環境和競爭更容易發生。

7.應該始終使用模塊化調用;他們很有趣。

利用同步模塊化調用來執行I/O操作對大多數桌面應用程序來說是合適的。但是,他們不是使用服務器上的CPU(s)的好方法。I/O操作要花費上百萬個時鐘周期來完成,這些時鐘周期本來可以被更好地利用。利用異步I/O你能得到顯著提高的用戶請求率和I/O通量,不過增加了額外的復雜性。

如果你有需要花費很長時間的模塊化調用或I/O操作,你應該考調撥多少資源給他們。你想使用所有的線程還是有個限制?一般地,使用有限的幾個線程要好些。構建一個小的線程池和隊列,利用隊列來安排線程的工作完成模塊化調用。這樣,其他線程就可以拾取和處理你的非模塊化的請求。

8.不要進行測量

當你能夠測量你所談論的事情并用數字表達它時,這就表示你對他有了一定的了解;但是如果你不能用數字表達時,你的知識是貧瘠的不能令人滿意的;這可能是知識的開始,但這時你簡直不可能將你的思想提高到科學的水平。

- Lord Kelvin (William Thomson)

如果不測量你就不能了解應用程序的特性。你在黑暗中摸索,一半是靠猜測。如果不識別性能問題,你就不能做任何改進或做出工作量計劃。

測量包括黑匣子測量和profiling。黑匣子測量的意思是收集由性能計數器(內存使用,上下文交換,CPU利用等)和外部檢測工具(通量,反映時間等)所顯示的數據。為了profile你的代碼,你編譯代碼的一個工具版,然后在各種條件下運行它,并收集關于執行時間和過程調用頻率的統計數據。

測量如果不用于分析的話就一點用都沒有。測量將不僅告訴你有問題,而且甚至能幫助你找到問題發生在哪,但它不能告訴你為什么會有問題。對問題進行分析以便你能正確地改正他們。要從根本上解決問題而不是停留在表面現象。


本文出自:億恩科技【www.23lll.com】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線

     
     
    九色成人免费视频_久久一区视频_视频一区国产精品_精品视频在线观看
    日韩亚洲国产欧美| 久久久久久9999| 久久久久一区二区| 亚洲视频在线免费观看| 中文日韩欧美| 亚洲精品久久久久久久久久久久| 狠狠色综合网站久久久久久久| 国产精品入口麻豆原神| 欧美无砖砖区免费| 欧美日韩一区二区在线观看 | 亚洲桃色在线一区| 中日韩午夜理伦电影免费| 99xxxx成人网| 一区二区毛片| 亚洲一区二区在线视频| 亚洲欧美日韩精品久久久| 亚洲欧美日韩中文播放| 午夜精品视频在线观看一区二区| 亚洲欧美日韩国产成人精品影院| 亚洲欧美日韩一区在线| 亚洲一区二区在线观看视频| 中文亚洲视频在线| 亚洲欧美日韩中文视频| 欧美在线网址| 亚洲国产导航| 亚洲精选在线| 一区二区三区精品久久久| 这里只有精品视频| 亚洲专区在线视频| 欧美一区二区三区播放老司机| 欧美淫片网站| 久久久久久9| 欧美顶级少妇做爰| 欧美日韩中文字幕| 国产精品青草综合久久久久99 | 在线亚洲国产精品网站| 亚洲一区二区三区精品在线观看 | 欧美高清视频在线播放| 欧美日韩免费高清| 国产精品一页| 一色屋精品视频免费看| 亚洲麻豆一区| 亚洲尤物影院| 亚洲国产老妈| 亚洲一区二区毛片| 久久国产一二区| 欧美好骚综合网| 国产精品久久久久久久电影| 国产一区二区三区精品欧美日韩一区二区三区 | 一本久久a久久精品亚洲| 亚洲你懂的在线视频| 亚洲国产成人tv| 这里是久久伊人| 久久久久免费视频| 欧美日韩成人精品| 国产一区二区三区高清在线观看| 91久久在线观看| 午夜精品区一区二区三| 亚洲精品极品| 校园激情久久| 欧美国产一区二区在线观看| 国产精品乱码久久久久久| 黑人极品videos精品欧美裸| 亚洲乱码视频| 久久av一区二区| 亚洲午夜高清视频| 久热精品在线视频| 国产精品久久久亚洲一区| 伊伊综合在线| 亚洲一区国产视频| 亚洲精品免费一二三区| 新67194成人永久网站| 欧美国产激情| 国内精品美女在线观看| 一区二区三区你懂的| 亚洲国产天堂久久综合网| 午夜精品久久99蜜桃的功能介绍| 欧美xx69| 国产自产精品| 亚洲一区免费视频| 99精品欧美一区| 久久影院亚洲| 国产噜噜噜噜噜久久久久久久久| 亚洲人成网站影音先锋播放| 久久gogo国模裸体人体| 亚洲免费一级电影| 欧美伦理91i| 在线日本高清免费不卡| 亚洲欧美日韩高清| 亚洲婷婷综合久久一本伊一区| 免费一区二区三区| 国产日韩欧美日韩| 一区二区三区精品久久久| 亚洲精品综合精品自拍| 久久天天狠狠| 国产午夜久久久久| 亚洲一区二区在线免费观看视频 | 日韩一二三在线视频播| 亚洲激情六月丁香| 久久久www成人免费无遮挡大片 | 亚洲黄一区二区| 亚洲国产高清在线观看视频| 久久久久88色偷偷免费| 国产欧美日韩高清| 亚洲在线国产日韩欧美| 亚洲综合精品四区| 国产精品成人播放| 夜夜嗨av一区二区三区| 99国内精品久久久久久久软件| 美女视频黄 久久| 国产综合第一页| 欧美一区二区在线免费观看| 久久国产精品99国产精| 国产精品自拍一区| 亚洲一区视频| 欧美亚洲免费高清在线观看| 国产精品久久久久久久久搜平片| 一本色道久久综合亚洲精品按摩 | 激情久久久久久久久久久久久久久久| 亚洲欧美日韩第一区| 欧美一区二区三区免费看| 国产精品视频一区二区高潮| 亚洲尤物视频网| 久久精品亚洲国产奇米99| 国产一区二区三区免费观看| 欧美在线一级视频| 久久久久国产一区二区三区| 狠狠干综合网| 亚洲精品护士| 欧美日韩一区二区视频在线观看 | 亚洲精品黄网在线观看| 99热在这里有精品免费| 欧美理论片在线观看| 日韩一区二区精品视频| 亚洲视频免费观看| 国产精品欧美日韩一区| 欧美呦呦网站| 免费欧美网站| 亚洲免费av电影| 亚洲永久免费观看| 国产人成精品一区二区三| 久久精品免费观看| 欧美高清在线视频观看不卡| 亚洲精品一区二区三区不| 亚洲综合精品四区| 国产一区二区三区在线观看免费| 亚洲国产99| 欧美日韩一区二区免费视频| 亚洲欧美日韩直播| 男人插女人欧美| 99成人在线| 欧美在线亚洲一区| 在线精品国产欧美| 亚洲一级在线观看| 国产视频欧美视频| 亚洲精品久久7777| 国产精品www网站| 欧美一区二区视频网站| 欧美国产先锋| 亚洲男人第一网站| 欧美成人dvd在线视频| 在线亚洲免费视频| 久久人人爽爽爽人久久久| 亚洲欧洲在线一区| 欧美一区二区免费观在线| 伊人成人开心激情综合网| 亚洲色图综合久久| 狠狠久久综合婷婷不卡| 一区二区91| 国产一区二区精品| 一区二区欧美精品| 国产一区二区三区成人欧美日韩在线观看 | 国产精品伊人日日| 久久精品国产免费观看| 欧美日本精品| 久久aⅴ国产欧美74aaa| 欧美日韩一区二区三区在线视频| 欧美永久精品| 国产精品高潮在线| 亚洲精品国产精品国自产在线| 国产精品久久久久久久午夜片| 亚洲国产裸拍裸体视频在线观看乱了中文 | 免费观看30秒视频久久| 亚洲一区在线直播| 欧美华人在线视频| 欧美一区成人| 欧美日韩亚洲另类| 久久精品国产2020观看福利| 欧美视频一区二区在线观看| 亚洲福利视频一区二区| 国产精品视频导航| 一区二区三区免费在线观看| 国内精品久久久久久久影视麻豆| 亚洲一区视频在线观看视频| 曰韩精品一区二区| 欧美影院午夜播放| 一区二区三区高清在线| 欧美成人精品一区| 久久激情综合网| 国产精品一区二区你懂的|