<pre id="p1pz5"><delect id="p1pz5"></delect></pre>
<output id="p1pz5"><delect id="p1pz5"><listing id="p1pz5"></listing></delect></output>

<p id="p1pz5"></p>

<pre id="p1pz5"></pre>

<p id="p1pz5"></p>
<pre id="p1pz5"><output id="p1pz5"></output></pre>
<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre><pre id="p1pz5"></pre>

<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"><menuitem id="p1pz5"></menuitem></output></p>

<output id="p1pz5"></output>
<pre id="p1pz5"><output id="p1pz5"></output></pre>

<p id="p1pz5"><delect id="p1pz5"><menuitem id="p1pz5"></menuitem></delect></p>

<p id="p1pz5"></p>
<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"></p>

<output id="p1pz5"><delect id="p1pz5"></delect></output>

<p id="p1pz5"></p>

<p id="p1pz5"></p>

<p id="p1pz5"></p>
<p id="p1pz5"><delect id="p1pz5"><address id="p1pz5"></address></delect></p>

<pre id="p1pz5"></pre>

<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre>

畢業設計網
畢業設計論文 | 畢業設計任務書 | 計算機外文翻譯 | 文獻綜述 | 機械模具類 |

SQL server的 profiler 和查詢分析器

  申請中心測試,如何用 SQL SERVER的 Profiler 和查詢分析器測量你的網絡申請的表現到極端的那些工具之一,直到某人表示你如何有用的使用它。我復蓋了申請的價值為測量表現集中測試,因為你能使用那些,所以這相當緊要關頭測量作進步,固定的目標,而且最重要地是計劃能力和刻度。
   在這一專欄中,我要討論交換的其他二個工具: SQL SERVER的 Profiler 和SQL SERVER的查詢分析器,當這些 SQL 定向的工具不是大多數的ASP.NET 的時候,開發者熟悉,我會強烈地鼓勵你把這些加入你的工具箱。親自地,如果我除 ASP.NET 之外就會處理任何其他的產品隊了,在我在微軟的任期的期間,它會是 SQL SERVER在內部的隊, SQL SERVER的是一令人驚異復雜塊的軟件,但是規畫而且使用它相當容易。理解一些復雜很重要因為,當你將會找之時,數據庫是時常使你知道 SQL 的內在者的你的申請和更多的瓶頸你能做避免那些問題的服務器更多。

   將數據最佳化存取

   你花費多少時間分析你的申請如何使用它的數據庫資源?問開發者 , 最通常的答案是非常多.典型大多數的表現問題是在二中的一方法中演說:借由增加新的硬件或者借著校正調的密碼那申請.大多數的開發者偏愛調節密碼,但是有時它實際上可能是更多有效的到僅僅增加新的硬件.然而它應該被注意那一個表現問題有時能被借由在為瓶頸分析之前增加新的硬件使情況更壞.如果一瓶頸在軟件中,快速的表演硬件能更快速地排隊請求,發動瓶頸更壞的事.最好的方法,一如往常,將瓶頸分析(硬件或軟件)在做任何事之前。
   身為一個開發者,我偏愛首先投擲一些密碼,在采取硬件方法之前。一經決定被作出,它通常是大約做一些基本靠模切削那申請使用申請中央的測試而且識別哪里在申請中表現是貧窮的.一經問題區域被理清,下一個步驟應該將使用SQL SERVER的 Profiler 檢查申請如何使用數據庫資源。
   當它寫網絡申請的時候,有一個表現自明之理:如果你的申請運行任何的跨程序溝通(數據庫,網絡服務)它是一種你的時間的較好的使用或將那些溝通最佳化或嘗試在你的申請里面將其他的密碼最佳化之前完全地除去他們。因為數據庫最佳化,如果申請正在去到,我的一般經驗法則是那數據庫超過一次或兩次在一個給定的請求上, (或使網絡服務成為呼叫)因為那些來回雙程是最時常因素,所以一定有的非常好理由它貧窮地表演申請。
   Telligent 是我的隊才度過過去三個星期調整我們的社區服務器forums.asp.net.我們將近制造了 40個現像的變化,其中 75% 是在數據庫,當另一個 25% 直接地被講對任一編碼變化的時候減少或者將在數據庫被花費的時間最佳化. ASP.NET 的貯藏特征是一最好的工具為減少數據庫來回穿行。
   如果你正在使用你已經得到一組工具的 SQL SERVER的Profiler 而且查詢分析器,對于理解,你的申請正在使用數據庫的方式.我將不包括全部在這一專欄中的 Profiler 的內在工作或查詢分析器,但是學習更多有關如何 SQL SERVER的作品在思維之下,我高度地推薦微軟 SQL SERVER的 2000 的表現最佳化和校正手冊. 這一本書是我的喜愛叁考之一-我自己的副本被加亮的咖啡.希望你的副本將會擁有同樣有用的存在。


      SQL SERVER的 Profiler

   檢查記錄或痕跡被你的申請產生的文件對理解是無價的,你的應用如何正在被用.舉例來說,對于網絡開發者,檢查 IIS 記錄是通常的了解應用使用.在團體服務器里面有一個內建的例外處理的人到追蹤被產生的所有的例外;稍后,我們能檢討這些記錄而且很快地得到一個好主意問題區域。
   SQL SERVER的 Profiler 能用來在你的流動 SQL SERVER的上看活動的活會議數據庫.你能拾落穗如此的重要的數據當做多少疑問你的數據庫是運行,那些疑問是拿多少時間,質疑的運行是哪一個數據庫,而且如此在。之上由于數據庫的表演 profiler 會議在 asp.net 群上用了.你能見到一些被捕獲的 SQL 痕跡,哪一場表演為 weblogs.asp.net 儲存了程序(項目以 blog_ 前綴), beta.asp.net(以 aspnet_ 前綴的項目), 社區服務器論壇(項目以 cs_ 前綴), 而且為 www.asp.net 下載下載臺. 借由選擇你也能看全文的一個項目,如同有被做對于被儲存的程序 cs_forums_Post.為處理器,閱讀有另外的專欄,讀寫的期間。
  
   儲存程序

   有關使用被儲存的程序有很多熱情的辯論.使用的一個好爭論他們能在 " TheServerSide 辯論:儲存了程序 v 參數化的疑問 " 被發現是彼得 DeBetta。
   在企業申請的儲存的程序的利益之一是封包和抽象化.如果一個申請正在使用動態的 SQL (正在被產生的 SQL 本文在那之上飛行), 申請正在典型地更挑戰調節.校正電動 SQL 需要再編譯申請.儲存程序,另一方面,裝入膠囊他們的功能性而且能沒有影響公眾的簽字被修正.正如如方法在你的美國石油協會以許多方式作為裝入膠囊被儲存程序的功能性是那相同的能力,但是在數據庫中。
   當然為使用動態的 SQL 也有一些好情形.一個例子會是反對/能動態地產生以商務物體為基礎的 SQL 的表示關系的制圖人需求.如果電動 SQL 被用于,任何 asp.net 聚集它會在 SQL 出現如標準的 SQL 的 Profiler,像選擇專欄 1, 來自 TableA 的專欄 2。

   從Profiler開始

   你能在 SQL SERVER的文件夾中有 SQL SERVER的的任何標準安裝找 Profiler在所有的計劃項目表中.我也會推薦安裝如部份的 SQL SERVER的工具任何的標準開發者環境。
   在你能開始之前一經你打開,你將會需要首先到一個數據庫連接的 Profiler 一靠模切削會議.對數據庫連接,選擇文件│新的│痕跡.這提出那對 SQL SERVER的會話連接.進入你的窗口或 SQL SERVER的圖書.注意那你將會需要當 SQL SERVER的 sysadmin 團體的一個成員跑 profiler 。
   下一個,已經在圖書之后被查證你將會需要設定一些財產為那在痕跡特性會話中追蹤.預先設定地, Profiler 將會取得被定義的事件進入標準的型板.這是一個事件的重要子集不愿他們全部.當取得每件事物可能是有用又大多數的伺候器支援超過一個數據庫和痕跡那取得所有的數據庫交通不是必需或有用的.藉由按下過濾器定位鍵你能識別一些過濾器強迫什么被捕獲.舉例來說,你能強迫對來自一個特定的登錄的唯一的表演連接的痕跡,質疑那有一種特性期間 , 或包含一些已知的本文的疑問(你們能使用如此的取代字符符號當做到做相配的 SQL 取代字符).
   舉例來說,讓我們說你想要為社區跑所有數據庫交通的痕跡服務器.此外,你只想要審查正在接管 100 ms 的溝通運行。(通常計算那帶比 200 ms 將會是的更大引人注目的對使用者)為了要做這我設定有一個指定的登錄名字的一個過濾器,像 csforums,和一期間更棒的超過或與 100相同. 圖 2 表示這一痕跡的結果。
   有一些正在更時常跑的被儲存的程序,即cs_forums_Search 和 cs_Sections_Get.也許是 cs_Threads_GetThreadSet 有703 的期間! 儲存程序的 cs_Sections_Get 也些微地看起來不正常由于超過 11,000 總數連同高期間價值一起讀.這些數字不是可怕的,但是他們也不是完美的。
   使用 Profiler 提供的數據,你能至少開始了解什么你的數據庫正在做和它正在花費它的時間的地方.在這一痕跡會議中,我過濾正在花長的時間跑而且把重心集中在論壇數據庫的程序.在那里也可能在哪一個有太多疑問跑和減慢系統是情形,但是在那些情況減輕是最好的,一些數據庫藉由增加裝載一另外的
伺候器或為嘗試除去錯誤的實在準備數據庫的當地副本。
   在一個很重要裝載的系統上,并非使用 Profiler UI 收集你的 SQL 痕跡,你應該考慮使用 T-SQL 將結果送到一個服務端文件(你能仍然使用UI 產生痕跡定義,對手寫體它,和運行它). 將結果送到服務端痕跡文件確定當把事件送給痕跡到的時候,沒有事件被降低一rowset(是什么 SQL Profiler 使用)不保證這。
 分析質疑

   為了要在查詢分析器查找疑問,首先用黏貼的內容進入查詢分析器,然后去到工具欄和選擇疑問│表演實行計劃.下一個,加亮 SQL 運行。立刻在 SQL 下面質疑那被運行是結果格子,表示什么是藉著疑問回.在這情況有被退還的二 resultsets.第一 resultset是一連串的區段 (論壇),而且一個第二的是一系列許可.社區伺候器使用一個以角色為基礎的許可制度控制什么使用者罐子或者不能夠做在那里面系統.每當一連串的區段被取回,系統也使它的目錄生氣蓬勃為那些區段的許可。
   在查詢分析器的底部權利,你見到本文: "5430 排 ". 這指出那排的總數回.在這一個程序,在許可邏輯中有一個段會導致系統對總角色歸還一個目錄同等物是以那相乘總區段.在 forums.asp.net 的情況,有 29個獨特的角色和 181個區段;這總計 5,249 排.增加被第一 resultset 退還的 181 排和你拿的5,430 排的總數回。
   顯然地這是相當地許多排.事實上,借由使用 Profiler 和查詢分析器,這特別的疑問被最佳化歸還得比 250 總計的切記錄的期間少對少于 100 ms。除了流動的疑問之外,查詢分析器讓你分析一個疑問.取消那你在運行 SQL 之前使實行計劃的成績能夠了.計劃提供一SQL SERVER的如何正在運行你的疑問的視覺圖表,什么編入索引中它使用,和另外地被 SQL SERVER的需要提高疑問的能幫助你將索引最佳化的數據或者其他的數據表現。
   運行的圖 4 表演每個疑問,它的實行計劃,用的索引,參加,和數量數據從每操作返回了.甚至箭在每個項目之間有重要性:箭的厚度是數據被那退還多少的視覺指示操作;也就是說,一個校正的疑問可能有許多厚的箭指出操作哪一個正在或許歸太多數據。申請中心測試, SQL SERVER的 Profiler 和 SQL SERVER的查詢分析器是一些為校正你的 ASP.NET 的表現或 SQL SERVER的申請的大部分有力的工具。而且,他們還是一個開發者的工具帶箱的部份,但是這些有力的工具應該也通常被用檢查申請的全部表現.經常除去的時候,開發者將會把重心集中在將他們的密碼里面的常式最佳化或將像數據庫呼叫這樣的跨程序溝通最佳化,會是一種更好的使用時間的方法。

以上是一部分介紹,如需要完整的資料或者如不符合您的要求,請聯系技術人員qq:1587620172咨詢 微信:phpvisa66

上一篇:delphi圖書進銷存管理系統
下一篇:外貿業務系統的畢業設計


版權所有 畢業設計網聯系qq:1587620172 © 2007-2022

蝴蝶中文综合娱乐网

<pre id="p1pz5"><delect id="p1pz5"></delect></pre>
<output id="p1pz5"><delect id="p1pz5"><listing id="p1pz5"></listing></delect></output>

<p id="p1pz5"></p>

<pre id="p1pz5"></pre>

<p id="p1pz5"></p>
<pre id="p1pz5"><output id="p1pz5"></output></pre>
<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre><pre id="p1pz5"></pre>

<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"><menuitem id="p1pz5"></menuitem></output></p>

<output id="p1pz5"></output>
<pre id="p1pz5"><output id="p1pz5"></output></pre>

<p id="p1pz5"><delect id="p1pz5"><menuitem id="p1pz5"></menuitem></delect></p>

<p id="p1pz5"></p>
<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"><output id="p1pz5"></output></p>

<p id="p1pz5"><output id="p1pz5"></output></p>
<p id="p1pz5"></p>

<output id="p1pz5"><delect id="p1pz5"></delect></output>

<p id="p1pz5"></p>

<p id="p1pz5"></p>

<p id="p1pz5"></p>
<p id="p1pz5"><delect id="p1pz5"><address id="p1pz5"></address></delect></p>

<pre id="p1pz5"></pre>

<pre id="p1pz5"><output id="p1pz5"><delect id="p1pz5"></delect></output></pre>