




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、從一越高的密度就意味簡介性能檢測環(huán)境性能檢測執(zhí)行性能檢測分析簡介S+S應(yīng)用軟件也不能例外 -你必須在制作它的架構(gòu)和設(shè)計(jì)時(shí)考慮你想要達(dá)到的性能目標(biāo)。開始就把對這些參數(shù)的思考體現(xiàn)在你的設(shè)計(jì)中, 這能避免在以后的運(yùn)行周期, 浪費(fèi)很長的時(shí)間和資源解決系統(tǒng)性能和可兩側(cè)性的問題。 但是,你必須也提供一個(gè)數(shù)據(jù)架構(gòu)可以同時(shí)足夠 的強(qiáng)化大和安全來滿足租戶或是用戶在面對第三方要對自己重要商業(yè)數(shù)據(jù)全面控制的要求, 并且同時(shí)還要在它的管理和修護(hù)上高效和經(jīng)濟(jì)。 你必須在創(chuàng)建你的數(shù)據(jù)架構(gòu)時(shí)考慮下列的參 數(shù):獨(dú)立 :它是指每個(gè) tenant 數(shù)據(jù)相對于其他用戶數(shù)據(jù)的獨(dú)立程度。在某一個(gè)極端,你可以分離出每個(gè) tenant 的
2、數(shù)據(jù)到一個(gè)獨(dú)立的數(shù)據(jù)庫, 甚至是在分開的數(shù)據(jù)庫服務(wù)器。 獨(dú)立的結(jié)構(gòu)將會(huì)意味著每個(gè)用戶承受著更高的花銷。密度 :指在共享資源對于一個(gè)具有更高用戶密度的物理服務(wù)器的影響。著一個(gè)用戶越低的費(fèi)用??蓴U(kuò)展性 :它是指用戶可單獨(dú)擴(kuò)展和設(shè)置數(shù)據(jù)模式來滿足所需的能力。在思考了上述參數(shù)之后你所做的責(zé)任會(huì)影響你的應(yīng)用軟件的性能。如果你計(jì)劃允許你的租戶擴(kuò)展應(yīng)用程序,那你就必須決定如何對你數(shù)據(jù)庫的擴(kuò)展性提供支 持??蓴U(kuò)展性方案下列的列表描述了你可用來實(shí)現(xiàn)數(shù)據(jù)庫架構(gòu)可擴(kuò)展性的方法擴(kuò)展表( Extensibility tables ):運(yùn)用這個(gè)方法,常用數(shù)據(jù)會(huì)儲(chǔ)存在一張表內(nèi),并且每個(gè)tenant 特定的數(shù)據(jù)列都會(huì)保存在一
3、個(gè)獨(dú)立的表中,并且以行形式存儲(chǔ)。固定列 Fixed columns :運(yùn)用這個(gè)方法,你的表格會(huì)包含提供用戶擴(kuò)展所需的列.租戶如果不擴(kuò)展應(yīng)用軟件就不會(huì)用到那些列。在固定列里的數(shù)據(jù)是針對Tenant。Hybrid 混合:運(yùn)用這個(gè)方法,即提供 Fixed columns 又提供額外可擴(kuò)展(擴(kuò)展表或 XML列)XML 列:運(yùn)用這個(gè)方法,每個(gè)用戶對應(yīng)用程序所做的擴(kuò)展都會(huì)儲(chǔ)存在XML 列里。Tenant-specific table schema :運(yùn)用這個(gè)方法,你可以為每個(gè)租戶創(chuàng)建單獨(dú)的Schema。上述方法的性能都與很多參數(shù)有關(guān), 包括 Tenant的數(shù)量, 可擴(kuò)展域的大小以及并發(fā)用戶數(shù)量。所在環(huán)境下
4、的工具和測試為了使用戶高效地決定在自己的應(yīng)用中采取那種數(shù)據(jù)擴(kuò)展方法,可以使用以下方法進(jìn)行測試:共享用戶數(shù)據(jù)庫測試工具 Multi-tenant Database Test Tool. 你可以使用這個(gè)工具來對重復(fù)性的步驟進(jìn)行自動(dòng)化,這包括數(shù)據(jù)庫部署,數(shù)據(jù)全局,設(shè)置壓力測試,等等.一系列的性能測試 A suite of performance tests .你可以使用這些測試來測量不同多租戶數(shù)據(jù)庫方案的性能和可測量性過程你可以使用工具并結(jié)合性能測試來獲得性能數(shù)據(jù),它對于將來選出對你的應(yīng)用軟件和設(shè)置環(huán)境的最佳方案有幫助? 創(chuàng)建性能測試環(huán)境? 使用多租戶數(shù)據(jù)庫測試工具和性能測試來獲得數(shù)據(jù)? 分析結(jié)果下
5、列部分會(huì)對每個(gè)活動(dòng)進(jìn)行描述性能測試環(huán)境多租戶數(shù)據(jù)庫工具和性能測試要求您必須安裝如下軟件:Visual Studio 2005 Team System TestSQL Server 2005測試環(huán)境是由代理 ,控制器和可存儲(chǔ)結(jié)果的數(shù)據(jù)庫的組合。 這個(gè)手冊不會(huì)對不同設(shè)置情況解釋 ,也不會(huì)指導(dǎo)你如何設(shè)置試驗(yàn)臺(tái). 想要知道如何創(chuàng)建和設(shè)置, 請參見 Setting up theController and Agent Functionality .控制器控制器提供了運(yùn)行測試的整體架構(gòu), 包括運(yùn)行壓力測試的特殊功能。控制器向所有代理傳遞壓力測試并且一直等到所有代理都開始運(yùn)行這個(gè)測試的時(shí)候才關(guān)閉。當(dāng)所有代理
6、都準(zhǔn)備就緒,控制器會(huì)向代理發(fā)送一個(gè)開始運(yùn)行測試的指示代理代理必須運(yùn)行一個(gè)監(jiān)聽服務(wù),來監(jiān)聽控制器運(yùn)行測試的需求。當(dāng)接收到需求后,代理服務(wù)會(huì)開始重新啟動(dòng)測試 .每個(gè)代理都會(huì)運(yùn)行同樣的壓力測試性能測試執(zhí)行這部分描述如何使用多租戶數(shù)據(jù)測試工具來對那些開發(fā)人員或測試人員在準(zhǔn)備和執(zhí)行性能你可以在以下演示圖中看到 LitwareHR performance lab 的實(shí)體。你必須在使多租戶數(shù)據(jù)庫測試工具前對它進(jìn)行編譯。要做到這一點(diǎn), 打開在 Visual Studio2005在電腦上安裝這個(gè)工具,在電腦上復(fù)制可執(zhí)行文件MTDB.PerformanceTool.exe。在你安裝了測試時(shí)所演示的活動(dòng),進(jìn)行自動(dòng)化
7、。需求:中的 MTDB.PerformanceTool.sln 解法方案文件并創(chuàng)建解決方法。多租戶數(shù)據(jù)庫測試工具的電腦上你還需要安裝以下文件:Visual Studio Team Test or Team SystemSQL Server Express 唯( 一要求就是要用 osql.exe 工具來運(yùn)行腳本 )注意 :這個(gè)工具有一個(gè)選項(xiàng),你可以運(yùn)用它來自動(dòng)執(zhí)行這些測試作為最后一步。如果你選擇了這個(gè)選項(xiàng), 已經(jīng)安裝了工具的電腦上的網(wǎng)絡(luò)連接必須和測試實(shí)驗(yàn)臺(tái)的網(wǎng)斷是一樣的。如何使用多租戶數(shù)據(jù)庫測試工具你可以使用多租戶數(shù)據(jù)庫測試工具來快速獲得以下內(nèi)容來滿足為多租戶數(shù)據(jù)庫模式執(zhí)行性能測試的要求? 數(shù)據(jù)
8、庫腳本LoadTest 文件(與 mstest.exe 或 Visual Studio Team Test 一起執(zhí)行)? 測試配置文件? 執(zhí)行 LoadTest 的批量文件 工具提供了一個(gè)很棒的界面, 它呈現(xiàn)了一系列的參數(shù)并基于模板制作。 運(yùn)行這個(gè)工具, 運(yùn)行 可執(zhí)行的 MTDB.PerformanceTool.exe 。數(shù)據(jù)庫配置視圖第一步,輸入關(guān)于數(shù)據(jù)庫服務(wù)器的信息1服務(wù)器 IP:數(shù)據(jù)庫服務(wù)器的 IP 地址2數(shù)據(jù)源: SQL服務(wù)器名字要求3數(shù)據(jù)庫名稱:要?jiǎng)?chuàng)建的數(shù)據(jù)庫的名字4數(shù)據(jù)/登陸文件路徑: mdf和 ldf文件將會(huì)被儲(chǔ)存的地方5Bulk Insert 路徑:保存那些將會(huì)包含仿真數(shù)據(jù)的C
9、SV文件的存儲(chǔ)路徑。注意 :在數(shù)據(jù)文件路徑和登陸文件路徑領(lǐng)率里定義的文件夾必須保存在具有SQL 服務(wù)器的電腦中。我們建議使為 Bulk Insert 路徑在安裝了 SQL服務(wù)器的電腦上創(chuàng)建并使用一個(gè)共享文件夾。Extensibility Pattern 視圖第二步,輸入關(guān)于擴(kuò)展性視圖模式和通用參數(shù)。1left join )可擴(kuò)展模式 :擴(kuò)展表模式 Extension Table :多個(gè)租戶使用同一數(shù)據(jù)庫并共享全部的表。獨(dú)立的表格把租戶特定的列變?yōu)樾羞M(jìn)行存儲(chǔ)。利用SQL視圖把表中的行轉(zhuǎn)換為列。 LitwareHR 就是利用該方法構(gòu)建應(yīng)用。這個(gè)工具支持3 個(gè)不同的方案來創(chuàng)建這個(gè)視圖:a. OneJ
10、oinPerField ( 對每個(gè)擴(kuò)展域,租戶視圖都會(huì)有一個(gè)b. OneJoinPerTable (一個(gè)單獨(dú)的 left join )c. Pivot(SQL Server 2005的新功能)2Tenant-specific Schema :多租戶在同一個(gè)數(shù)據(jù)庫里,但每一個(gè)tenant 擁有自身定制化的345一套 Schema。但是該工具還不支持這種設(shè)計(jì)。固定列 Fixed Columns:提供固定列用于存儲(chǔ) Tenant 擴(kuò)展特定數(shù)據(jù)的方式?;旌?Hybrid :Fixed Columns 和擴(kuò)展表格結(jié)合起來, 如果需要比固定列數(shù)更多擴(kuò)展的字段將會(huì)為添加的域使用這些擴(kuò)展表格。XML列:租戶的
11、擴(kuò)展數(shù)據(jù)儲(chǔ)存在一個(gè)單獨(dú)的 XML 列。參數(shù):# of Tenants : .租戶的數(shù)量,為每個(gè)租戶生成的數(shù)據(jù)和視圖。# of Records per Tenant :每個(gè)租戶的記錄數(shù),這個(gè)參數(shù)是用來創(chuàng)建數(shù)據(jù)集。如果 tenant 的數(shù)量是 100 ,并且記錄 tenant 的記錄數(shù)是 1000,那么共享表格就會(huì)擁有 1,000,000 行。# of Extension Fields :對有的租戶這個(gè)參數(shù)都常量。如果租戶的數(shù)量是 100,記錄每租戶是 1000,并且擴(kuò)展字段數(shù)是5,那么共享的表格會(huì)有 1,000,000 行,同時(shí)擴(kuò)展表格會(huì)有 5,000, 000 行。Page Size:恢復(fù) S
12、ELECT ALL選 操作所需要的行數(shù)模擬一個(gè)真實(shí)的情況,在應(yīng)用將會(huì)使用內(nèi)存分頁,但是它不可能恢復(fù)1, 000, 000 行。測試配置視圖在你使用壓力測試功能時(shí), Visual Stuio Team Test 創(chuàng)建了一套模擬工具。設(shè)置的像是測試混合,測試的持續(xù)時(shí)間,在那里,結(jié)果會(huì)被儲(chǔ)存,被監(jiān)控的性能計(jì)數(shù)器會(huì)被儲(chǔ)存在.loadtest ”文件。其他配置例如:controller machine name,會(huì)被儲(chǔ)存在 “.testrunconfig 文件”。下面的solution explorer 顯示了這兩個(gè)文件:關(guān)于這些文件的好處是它們會(huì)儲(chǔ)存成Xml 文件,你可以輕松的理解和獲取。在這一步,
13、工具將會(huì)獲得參數(shù)和所需的文件模板,而且制作出特定的壓力測試要求,這些要求將會(huì)被 test framework ( mstest.exe)用于測試。1單元測試:選擇你想要進(jìn)行壓力測試的單元測試。這個(gè)下拉表列滿了在%insatll23 控制器:輸入用于測試的主機(jī)名或 IP 地址。4 測試時(shí)間段( sec):輸入每個(gè)測試的持續(xù)時(shí)間。5tests 文”件夾中的數(shù)據(jù)集,并且偵測所有內(nèi)在測試方法。用戶:輸入并發(fā)用戶數(shù)量。對每一個(gè)數(shù)字壓力測試會(huì)運(yùn)行指定的時(shí)間。結(jié)果文件夾:結(jié)果文件將會(huì)在每一個(gè)測試后儲(chǔ)存在這個(gè)文件夾里??偨Y(jié)視圖:在你運(yùn)行測試之前,所有參數(shù)的小總結(jié)會(huì)在下列窗口呈現(xiàn)出來。保持運(yùn)行和分析的快速是成功
14、的關(guān)鍵。 最后 步當(dāng)一組測試執(zhí)行的時(shí)候。工具應(yīng)用 mstest.exe 并且運(yùn)行起來1Generate Assets :生成數(shù)據(jù)庫腳本和bat 文件。23執(zhí)行視圖當(dāng)你做性能測試時(shí), 擁有能受最小阻礙的運(yùn)行一組測試的能力是很重要的。和 console application 一樣。Deploy Database :生成并執(zhí)行這一組腳本來部署數(shù)據(jù)庫。運(yùn)行測試。生成 Assets,部署數(shù)據(jù)庫并運(yùn)用 mstest.exe 執(zhí)行測試。如何做到:手動(dòng)執(zhí)行測試工具生成的資源在下面的文件夾里%Installat你可以在這個(gè)文件夾里找到下列一組文件:- DeployDatabase.bat. 運(yùn)行這個(gè)文件來創(chuàng)建
15、數(shù)據(jù)庫并插入 bulk 數(shù)據(jù)。- RunTests.bat. Run.運(yùn)行這個(gè)文件來執(zhí)行測試(它使用mstest.exe) .- StartHere.bat . 運(yùn)行這個(gè)文件來運(yùn)行 DeployDatabase.bat 和 RunTests.bat。性能測試分析-如何做到:分析測試結(jié)果在運(yùn)行了一個(gè)測試周期之后, 你就會(huì)想要分析壓力測試結(jié)果。 你可以發(fā)現(xiàn)這個(gè)測試結(jié)果在文 件夾 “ %InstallationPath%binGenerationResultsExtensibilityPatternScenarioNameResults ” 對每一個(gè)運(yùn)行的壓力測試, 你都會(huì)發(fā)現(xiàn)一個(gè) .trx 文件。
16、在 Visual Studio 2005 中打開這個(gè)文件, 你就可以看到這個(gè)側(cè)試的結(jié)果。這個(gè)數(shù)據(jù)包括下列對 LitwareHR 的計(jì)數(shù)分析(這是普通性能計(jì)數(shù)器在一場性能測試中所作的 分析)。- Total TestsTests/SecFailed TestsAvg. Response Time它還包括下列 SQL服務(wù)器特定計(jì)算器。% Process Time (Category Processor) % Process Time sqlsevr (Category Process)Target Server Memory (KB) (Category SQLServer: Memory Man
17、ager )Total Server Memory (KB) (Category SQLServer: Memory Manager ) % Idle Time (Category PhysicalDisk)Bytes Total/sec (Category Network Interface )運(yùn)用 excel 挖掘測試結(jié)果的數(shù)據(jù)-收集測試結(jié)果在 LitwareHR 測試執(zhí)行的過程中我們創(chuàng)建了一個(gè)Microsoft Excel 報(bào)表,我們通過它來收集原 始性能計(jì)算數(shù)據(jù)和測試中的不同參數(shù)。 你可以使用原始數(shù)據(jù)來過濾, 創(chuàng)建報(bào)告, 并分析性能。下列圖表展示了一個(gè)含有數(shù)據(jù)的報(bào)表的例子。注意:觀看一
18、個(gè)樣本報(bào)表,打開excel 文件 %InstallationPath%documentsperformance tests results litwarehr.xlsx 。運(yùn)用樞軸表來創(chuàng)建有意義的圖表。通過運(yùn)用一張?zhí)钣性紨?shù)據(jù)的報(bào)表,你可以創(chuàng)建cross-analysis.一個(gè) cross-analysis 的例子是 一個(gè)顯示每秒 transaction 相對于并發(fā)用戶過濾的擴(kuò)展域的數(shù)量的圖表。 要進(jìn)行 cross-analysis你可以以表格中的數(shù)據(jù)為基礎(chǔ)來創(chuàng)建一個(gè) pivot 圖像。Excel文件里。)下列樣圖展示了案例圖表 (可以找到這些和更多的圖像在附錄 A-查詢這個(gè)附錄涵蓋 SQL
19、在為不同方法來創(chuàng)建包含 shared columns(對所有用戶實(shí)用) 和 extensionfields ( unique to each tenant )。OneJoinPerTableSQLSELECT E.id, E.postedOn, E.code, E.title, X1.value AS field1, X2.value AS field2, X3.value AS field3, X4.value AS field4, X5.value AS field5FROM EntitySharedValue AS ELEFT OUTER JOIN dbo.EntityCustomVal
20、ue AS X1 ON E.id = X1.instanceId ANDX1.extensionRef = field1LEFT OUTER JOIN dbo.EntityCustomValue AS X2 ON E.id = X2.instanceId ANDX2.extensionRef = field2LEFT OUTER JOIN dbo.EntityCustomValue AS X3 ON E.id = X3.instanceId ANDX3.extensionRef = field3LEFT OUTER JOIN dbo.EntityCustomValue AS X4 ON E.i
21、d = X4.instanceId ANDX4.extensionRef = field4LEFT OUTER JOIN dbo.EntityCustomValue AS X5 ON E.id = X5.instanceId ANDX5.extensionRef = field5WHERE E.tenantId = ff7e3965-2e32-4e2b-aae1-63ecc54e2358OneJoinPerTableSQLFROM EntitySharedValue AS E LEFT OUTERJOIN dbo.EntityCustomValue AS X ON E.idSELECT E.id, E.postedOn, E.code, E.title, MIN(CASE WHEN X.extensionRef = field1 THEN X.value END) AS field1, MIN(CASE WHEN X.extensionRef = field2 THEN X.value END) AS field2, MIN(CASE WHEN X.extensionRef = field3 THEN X.value END
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 西安郵電大學(xué)《美術(shù)鑒賞與批評》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江理工大學(xué)《木材工業(yè)自動(dòng)化》2023-2024學(xué)年第二學(xué)期期末試卷
- 南昌大學(xué)共青學(xué)院《免疫學(xué)與病原生物學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 撫順師范高等??茖W(xué)?!镀放菩蜗髮m?xiàng)設(shè)計(jì)一》2023-2024學(xué)年第二學(xué)期期末試卷
- 證券從業(yè)資格證券投資顧問勝任能力考試證券投資顧問業(yè)務(wù)真題1
- 山東勞動(dòng)職業(yè)技術(shù)學(xué)院《智能車輛環(huán)境感知技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025遼寧省安全員B證(項(xiàng)目經(jīng)理)考試題庫
- 湖南冶金職業(yè)技術(shù)學(xué)院《企業(yè)生產(chǎn)與技術(shù)管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年陜西省建筑安全員-B證(項(xiàng)目經(jīng)理)考試題庫
- 湖南電氣職業(yè)技術(shù)學(xué)院《面向數(shù)據(jù)科學(xué)的語言》2023-2024學(xué)年第二學(xué)期期末試卷
- 手術(shù)部位感染預(yù)防控制措施
- 社會(huì)學(xué)概論課件
- 中醫(yī)類診所規(guī)章制度與崗位職責(zé)
- 初中語文 中考總復(fù)習(xí)-文言文斷句訓(xùn)練120題(含答案解析)
- 影視鑒賞-動(dòng)畫電影課件
- 美學(xué)原理全套教學(xué)課件
- 精裝修施工圖深化內(nèi)容及要求
- 《克雷洛夫寓言》閱讀指導(dǎo)課件
- 《無人機(jī)載荷與行業(yè)應(yīng)用》 課件全套 第1-6章 無人機(jī)任務(wù)載荷系統(tǒng)概述- 未來展望與挑戰(zhàn)
- 《室內(nèi)照明設(shè)計(jì)》(熊杰)794-5 教案 第7節(jié) 綠色照明、節(jié)能照明與應(yīng)急照明
- 腦卒中后認(rèn)知障礙的護(hù)理課件
評論
0/150
提交評論