IBM Rational CM Server 在 WAN 效能、可靠性以及可伸縮性方面的功能改進

myattitude發表於2009-12-31
轉自:http://www.ibm.com/developerworks/cn/rational/09/clearcasecmserverperformanceimprovement/index.html

在 Rational ClearCase 以及 ClearQuest 7.1.0.2 中的修復以及特性

  • 新增的 IBM HTTP 伺服器支援的 ClearCase Remote Client/CM Server 負荷平衡

    除 了 IBM® WebSphere® Application Server Network Deployment Edge Component 在 7.1 版本中與 CM 伺服器的負載平衡,ClearCase Remote Client 和 CM Server 負載平衡可以在 IBM® HTTP Server 中完成,該伺服器存在於 Rational ClearCase 以及 ClearQuest 軟體中。

    如果您想要得到關於 ClearCase Remote Client 和 CM Server 與 ClearCase Remote Client 的 HTTP 伺服器的負載平衡的更多配置資訊,您可以檢視 IBM Technote 1377474

  • 執行下載 cleartext 的壓縮操作。

    載 入一個 ClearCase Remote Client 檢視,或者升級到 ClearCase Remote Client 檢視,一般是最常用的 ClearCase Remote Client 操作。花在這種型別操作上的時間,包含了計算載入什麼以及轉移什麼檔案的時間。轉移檔案的時間要比計算內容的時間長的多。壓縮下載的 cleartext 導致了 ClearCase Remote Client 檢視載入的時間或者更新 WAN 連線的時間平均增加了 30%。要注意的一件事,是下載內容的大小就是決定加速的主要因素。這就是說,下載的內容越大,速度就越快。

  • 加速同步資料轉移到 CM 伺服器中

    異 步資料轉移的使用需要大量的緩衝器,以通過 TCP/IP 連線來傳送資料。可能會在轉移檔案時發生這種情況,但是當 CM 伺服器所在的 IBM® WebSphere® Application Server 產生正常的響應時,也會發生這種情況。在 7.1.0.2 版本中,CM 伺服器會通過設定 WAS 屬性,來強制同步資料的轉移:com.ibm.ws.webcontainer.channelwritetype=sync.=

    這就釋放了 WebSphere 程式-變更管理員伺服器中使用的大量本地記憶體,而這正是 CM 伺服器 7.1.0.0 以及 7.1.0.1 版本中經常觀察到的問題。

  • 優化一些經常使用的 CM 伺服器程式碼路徑,以提高效能、可靠性以修復記憶體洩漏問題

    CM 伺服器結構包含了多層,就像在一個典型的 Java™2 Platform、Enterprise Edition (J2EE)程式,例如 servlet、Enterprise JavaBeans™、 Java™Connector 結構(J2C)連線等等中所看到的那樣。但是,層狀的執行會出現諸如程式碼複雜性、資料積累以及除錯困難之類的各種問題。在 7.1.0.2 版本中,我們從訪問棧中刪除了一層,這就在長遠問題上解決了 JVM 堆積 OutOfMemory 問題或者過重的測試場景問題,並使效能、可靠性以及交易時間上有了很大的提高。

  • 修復 CM API 程式碼以及 ClearQuest Web 程式碼中出現的記憶體洩漏問題以及死鎖問題。

    ClearQuest Web 5 使用者儘可能快的測試,會在 CM API 程式碼中顯示死鎖的情況。這種問題是從縮小同步化訪問呼叫的範圍來處理的。

    ClearQuest Web 130-使用者會在 CM API 程式碼和 ClearQuest Web 程式碼中顯示記憶體的洩漏問題,這個問題已經得到了修復。

  • 修復高共時負載測試場景期間過剩 CCRPC 過程建立的問題。

    在 CM 伺服器生命週期管理規則中存在一個缺陷,這個缺陷導致了多使用者、高負載 ClearCase Remote Client 測試場景中的 CM 伺服器中出現的過剩的 ClearCase RPC (CCRPC)過程以及 OutOfMemory 錯誤。這種規則得到了改進,以在決定系統是否有能力分配新系統時,考慮進所有已知的 CCRPC 過程。如果系統資源有限,或者達到了容量 MBean 屬性,那麼 CM 伺服器會顯示出“伺服器繁忙”的錯誤。等待一段時間,並重新執行這種操作。

  • 通過增加資料轉移快的大小,來提高 ClearCase Remote Client 檢入以及 AddToSourceControl(mkelem)的效能。

    對於 ClearCase Remote Client 檢入以及 AddToSourceControl ( mkelem )操作,從請求插座到末端中的流資料會涉及到多個執行緒。每一個“塊”都會只啟用一次。通過增加資料轉移快的大小(從 1000 位元組到 32K),因此降低了內容切換頻率,因而系統的效能得到了很大的提高。

  • 交付 CM Server Administration GUI

    CM Server Admin GUI 為監視以及管理 CM 伺服器行為,乃至報告活性 ClearCase Remote Client 使用者和 ClearCase Web 活性使用者,提供了一種基於瀏覽器的工具。這種工具可以在沒有任何指令碼的情況下,輕鬆更改 CM Server MBean 屬性。

    對於 CM Server Administration GUI 的更多資訊,您可以檢視 IBM Technote 1377925

這些更改,合在一起,會提高 CM 伺服器的效能、可靠性以及實用性。檢視 比較 ClearCase Remote Client 7.1.0.0 版本以及 7.1.0.2 版本的範例測試資料 以及 7.1.0.2 版本之間 ClearQuest Web 範例測試資料之間的比較,以得到關於 7.1.0.2 版本的報告。


新增到 7.1.0.2 版本的新測試用例

從 7.1.0.0 版本開始,Rational Performance Engineering Team 以及 Rational System Verification Team 擁有了附加的測試配置以及下面的測試用例:

  • 高交易率 CM 伺服器壓力測試

    這種測試模擬測試使用者速度會像機器速度那樣,以允許測試 CM 伺服器。

  • 高使用者負載共時負載檢視測試

    負載檢視是最需要 ClearCase Remote Client 操作的一種。我們已經執行了多達 100 種共時負載檢視操作,負載目錄隨著伺服器的不同而有所不同。

  • 在支援的 CM 伺服器平臺上的 HIS 負載平衡測試

    IHS 負載平衡支援會新增到 7.1.0.2 版本中。我們會為所有支援的 OS 平臺執行 ClearCase Remote Client 負載平衡測試,並驗證這種提高的負載平衡方案。

  • 在 Windows 平臺上執行的 ClearQuest Web 75-、 150-、以及 225-使用者可量測性測試
    Rational Performance Engineering 通過在 Microsoft® Windows® 作業系統(OS)上使用中等複雜性的方案,來執行可量測性的測試,以證實 7.1.0.2 版本提高了的可量測性以及效能。
  • Linux 平臺上的 Rational ClearQuest Web 130-使用者、3 天測試。

    我們的系統驗收團隊會在 Linux® 平臺上的 程式生命週期管理(ALM)方案資料庫上,執行一個 130 個使用者、為期 3 天、15 個交易每次 Rational ClearQuest Web 以及 CM 伺服器上的測試。

  • 在 Linux 平臺上執行的 ClearCase Remote Client 200 個使用者、3 天的測試
    系統驗收團隊會在 RedHat Linux 5 上的 CM 伺服器上,執行一個 200 個使用者、為期 3 天的 15 個交易每小時的 ClearCase Remote Client 測試。通過使用 CM API for ClearCase 來執行測試。
  • CM 伺服器管理 GUI 負載測試
    Rational Performance Engineering 以及系統驗收團隊會執行負載測試,以驗證 CM Server Administration GUI 的穩定使用,對 CM 伺服器的效能沒有負面的影響。

對 ClearCase Remote Client 7.1.0.0 版本以及 7.1.0.2 版本的範例測試資料的比較


表 1. 測試的硬體配置
測試配置
測試驅動器IBM x336 with 2 Intel Xeon 3.4 GHz CPUs,4 GB RAM,
OS:RHEL 4
CM 伺服器IBM x366 with 4 Intel Xeon 3.67 GHz CPUs,8 GB RAM,
OS: RHEL 5.3
VOB 伺服器IBM x366 與 4 Intel Xeon 3.67 GHz CPUs,8 GB RAM,
OS: RHEL 5.3

LoadView 操作中的目錄大小是 22 MB。MakeFile、Checkin 以及 Checkout 操作中檔案的大小是 100 KB。FreeBSD DummyNET WAN 模擬器位 IBM® Rational® Performance Tester 驅動器以及 CM 伺服器之間。我們為這些測試模擬了 100 ms 環形潛伏期以及 3 Mbps 的網路頻寬。

圖 1 中的圖顯示了單個使用者基準測試中 7.1.0.2 中的效能提升。


圖 1. 單個使用者 CM API 基準
比較單使用者 CM API 響應時間

圖 1 的大圖

在 多使用者測試的環境下,上面提到過的 7.1.0.2 版本中的效能改進的合併效應,要比單使用者基準測試明顯的多。在一個有 25 個使用者的測試中,7.1.0.2 與 7.1.0.0 相比,載入檢視操作有 400% 的提高,其他的操作有 10% 到 50% 的效能改進。


圖 2. 25 個使用者 CM API 基準
比較 25 個使用者的 CM API 響應時間

圖 2 的大圖

ClearQuest Web 7.0.1 版本與 7.1.0.2 版本之間的範例測試資料比較


表 2. 測試的硬體配置
測試配置
測試驅動器垃圾廣告 垃圾廣告 雙核 3 GHz Intel® Pentium® 4 CPUs,2.5 GB 記憶體
作業系統:Microsoft Windows XP Professional,2002 Service Pack 2 版本
Rational ClearQuest Web 以及 CM 伺服器IBM® IntelliStation® Z Pro 雙核 2.40 GHz Intel® Xeon® CPUs,4 GB 記憶體,支援實體地址擴充套件
作業系統:Microsoft Windows 2003 伺服器,Enterprise Edition with Service Pack 2
資料庫伺服器IBM® xSeries® 345 雙核 3.06 GHz Intel Xeon CPUs,8 GB 記憶體,支援實體地址擴充套件
作業系統:Microsoft Windows 2003 伺服器,Enterprise Edition with Service Pack 2
資料庫伺服器:Microsoft SQL Server 2005 Service Pack 3

圖 3 中的圖顯示了 7.0.1.0 版本與 7.1.0.2 版本之間的ClearQuest Web 單使用者效能改進之處。


圖 3. Rational ClearQuest Web 7.1.0.2 與 ClearQuest Web 7.0.1 單使用者基準相比較
比較 ClearQuest Web 單使用者響應時間

圖 4 中的圖顯示了 7.1.0.2 版本的 ClearQuest Web 可量測性。


圖 4. ClearQuest Web 7.1.0.2 可量測性
 ClearQuest Web 伺服器的響應時間

下一個補丁版本計劃中的修復與特性

本段列出了現在我們正在處理的效能、可靠性與可量測性相關的工作。不能保證特性或者修復

  • 更好的 cleartext 上傳壓縮率,進一步加速了 ClearCase Remote Client 檢視載入以及更新
  • ClearCase 遠端客戶端程式碼優化
  • 通過增加上傳檔案的大小,來提高 ClearCase 遠端資料的轉移率。初步的測試顯示了上傳大型檔案所花的時間減少,而網路使用率卻有了很大的提高。
  • 包含大量引用的 ClearQuest 記錄區域的有效資料獲取。
  • 更快的 ClearCase 遠端客戶端紊亂探測。
  • 持續的簡化 CM 伺服器訪問棧。
  • 在 CM 伺服器 CQ 網路末端防止記憶體崩潰,來增加可靠性。
  • 載入 ClearQuest Web 的更快記錄。
  • 通過有效地查詢與匹配,來對 ClearCase Remote Client UCM 活動與支援 CQ 的 UCM 環境中聯絡 CQ 記錄改善效能。
  • 對 ClearCase Remote Client 變更檢視的效能作出改善。Pending Changes 檢視中的其他選項,由構件(對於 UCM)或者目錄結構(對於基底 CC)來劃分範圍。
  • 其他的可量測性改進。

另外,Rational ClearCase 和 ClearQuest CM 伺服器仍然包含了 FixPack 25。Rational Performance Engineering 和 Rational 系統驗證團隊已經測試了 WebSphere Application Server FixPack 25。各種各樣的使用者使用了 FixPack 25 顯示了效能、可靠性以及交易時間上的改進。關於怎樣將 CM 伺服器網路域程式伺服器安裝檔案升級到 FixPack 25的 IBM Technote 已經公佈。檢視 Resources 以得到一個列表以及連線。

總結

IBM 一直致力於完善 Rational CM Server、ClearCase Remote Client,以及 ClearQuest Web 的效能。正如我們在報告中陳述的那樣,CM 伺服器從 7.1 版本開始就已經有很多動態的改進了。這些改進使得 ClearCase Remote Client 和 ClearQuest Web 執行起來更加完善,並使得伺服器變得更加可靠和可測。

資料與例項由下列人員提供:

David Qiang Li,Grant Covell,Paul Weiss
IBM Rational 效能工程

Mark Duquette,Denice Ortege,Joey Zhou,Lily Shi
IBM Rational 系統驗收團隊

開發工作由下列成員完成:

Kevin Esler,Jon Freyberger,Steve Rehrauer,Rob Title,Yuhong Yin,Doug Mckenzie,Masa Koinuma,Terry Sun,Shaila Golikeri,Daniel Wang,Leon Liang,Jack Ma,Knut Radloff,Herb Miller,Matt Lennon,Adina Adler,Rob Stanzel,Mike Prentice,Mike Mole,Liz Bonesteel,Jim Wu,Howie Bernstein,Eleonora Ludin,Hans Heilman
IBM Rational CM 伺服器團隊,ClearQuest Web 團隊以及 ClearCase 遠端客戶端團隊

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14780914/viewspace-624053/,如需轉載,請註明出處,否則將追究法律責任。

相關文章