【正文】
.NET Data Provider for Oracle (數(shù)據(jù)基于 Nile 基準(zhǔn) ) 最大吞吐量及向上延展性0100200300400500600. N E T M a n a g e d P r o v i d e rf o r O r a c l eO l e D B P r o v i d e r f o rO r a c l e頁/秒1 C P U A p pS e r v e r4 C P U A p pS e r v e rNile 基準(zhǔn) ? 使用 eWeek 版本的 JSP/Nile 重復(fù)了 2022春的 eWeek/PC Magazine 數(shù)據(jù)庫基準(zhǔn) ? BEA/JDBC 到 SQL Server 后端 ? BEA/JDBC 到 Oracle 后端 ? 比較于 ? .NET 到 SQL Server 后端 (通過 .NET SQLClient 類 ) ? .NET 到 Oracle后端 (通過 .NET OracleClient 類 ) ? 因為 Ziff 沒有公布它的測試腳本 , 我們只好使用自己的 Benchmark Factory 測試腳本 Ziff 測試報告 … ? BEA 到 mySQL 和 Oracle 后端性能最佳 ? BEA 到 SQL Server后端性能最差 ? 他們得出結(jié)論說如果中間層使用 Java, SQL Server 來作后端是不可行的 ? 到 SQL Server后端性能非常好 ? 比 BEA到 Oracle/mySQL后端大約好 50% 我們發(fā)現(xiàn) … ? BEA/JSP 應(yīng)用程序 ? Ziff 使用了批量語句來限制輸出行數(shù) (SQL Server) ? “Set Rowcount 100 Select * from Products Set Rowcount 0” ? 這個不尋常的編程方式使 SQL Server JDBC driver 進(jìn)入一個性能很差的游標(biāo)模擬狀態(tài) ? 應(yīng)使用 ? “Select Top 100 * from Products” ? 結(jié)果性能提高了一個數(shù)量級 ? 應(yīng)用程序 ? 是對 JSP 代碼的直接移置 , 而非對 .NET的最佳編程實踐 ? 不是很公平的比較 , 應(yīng)該有一個合適的 的實現(xiàn) ? 查詢用了 Like clause , 而 JSP/BEA 應(yīng)用程序用的是 exact match ? 結(jié)果性能慢了很多 , DB 利用率高了 5倍 Nile 基準(zhǔn) 測試結(jié)果 Compaq ProLiant 4 x 550 MHz Server 0100200300400500600700800900P g s / s e c. N E T O L ED B t oO r a cl e ( M SO L E D BP r o v i d e r )JD B C / B E At o O r a cl e( O r a cl e t h i nJD B CD r i v e r )JD B C / B E At o S Q LS e r v e r ( M St h i n JD B CD r i v e r )V B / C O M +( D N A ) t oS Q L S e r v e r( O L E D B ). N E TM a n a g e dP r o v i d e r t oO r a cl e. N E T t oS Q L S e r v e rN i l e 應(yīng)用最大吞吐量關(guān)鍵結(jié)論 ? 如果中間層使用 Java, SQL Server 作后端是一個很好的選擇 ? BEA 與 SQL Server 比與 Oracle 性能要好 ? 如果以 Oracle 作后端 , 中間層使用 .NET是一個很好的選擇 ? .NET 訪問 Oracle 后端同 COM+/Win DNA 訪問 SQL Server 后端一樣快 ? .NET 訪問 Oracle 后端比最新的 JDBC 訪問 Oracle 后端快 100%多 (Oracle drivers, BEA ) ? .NET 訪問 SQL Server 后端仍然是最快的 ? 比 BEA ? 更快的數(shù)據(jù)訪問意味著在相同的用戶響應(yīng)時間和 相同的并發(fā)用戶數(shù)的要求下需要的服務(wù)器更少 ? 運(yùn)行同樣的應(yīng)用程序 , .NET 比 Java 需要少得多的服務(wù)器 重寫 Java Pet Store ? 有人抱怨說 : “從來沒想把它當(dāng)成一個基準(zhǔn) ….” ? 請 Java 開發(fā)專家 (Middleware Corp.) 來重寫 Sun 的 Java Pet Store ? 設(shè)計完全自由 , 只須滿足以下幾個要求 : ? 必須基于 J2EE ? 必須是 3層結(jié)構(gòu) ? 必須 100%的功能等價 ? 增加了分布式事務(wù)處理 ? 運(yùn)用 EJB/ JTA 與 .NET/COM+ ? 增加了基于 SOAP 的 Web 服務(wù) ? 在各種配置下作基準(zhǔn)測試 ? 請 Middleware Company 測試所有的實現(xiàn)并驗證所有的