編者注:為了從本文描述的性能提高中受益,我們建議您升級到 Lotus Notes/Domino 6.5.4。不過,對于那些簽定了支持合約并且需要 Domino Web Access 6.5.3 hotfix 的客戶,請與 IBM Lotus Support 聯系來請求獲得它。]IBM Lotus Domino Web Access (DWA) 是 IBM 用來訪問基于 Domino 的郵件文件的主要 Web 客戶機,它通過使用動態 HTML (DHTML) 為 Microsoft Internet Explorer 和 Mozilla 瀏覽器提供了豐富的用戶體驗。作為一個 DHTML html' target='_blank'>應用程序,Domino Web Access 客戶機的性能受到服務器性能、網絡性能和客戶機配置的制約。將使用 Domino Web Access 6.5.3 hotfix (也包含在DWA 6.5.4 及其更高版本中)與使用不帶 hotfix 的 DWA 6.5.3 的情況進行比較,Domino Web Access 將客戶機的響應時間提高了 30% 到 40%(在低端機器上最為顯著)。除了 hotfix 之外,還有其他一些管理員和用戶可以用來提高性能的方法。但某一領域的性能提高可能會對另一領域產生意料不到的影響。為了作出正確的決策,您需要了解您可以進行的選擇,以及您的決策可能帶來的影響。本文將展示 Domino Web Access 6.5.3 hotfix 所帶來的性能影響。還將描述管理員和用戶可以用來提高性能的一些設置,以及使用這些設置帶來的預期結果。Domino Web Access 的要求Domino Web Access 用戶訪問其郵件文件的基本要求是: 用戶必須有一個 Domino Web Access 郵件模板 (INOTESx.NTF)。推薦使用的模板是 Domino Web Access 6 (INOTES6.NTF)。 HTTP 服務器(Domino Web 服務器)任務必須在郵件文件所在的服務器上運行。 注意,用戶可以用 INOTES6.NTF 替換其郵件文件的設計。在完成替換之后,他們可以通過 Web 瀏覽器訪問其郵件文件,或者繼續使用 Notes 客戶機訪問其郵件文件,不會損失任何功能。Domino Web Access 的工作原理Domino Web Access 使用以下這些組件: Domino Web 服務器 用戶的瀏覽器 Internet 口令 Domino Web 服務器存儲用戶的郵件數據庫,該數據庫中包含一些將顯示的個人數據,比如消息、日歷條目和視圖等。用來顯示該數據(HTML 和 JavaScript)的邏輯和表單是在一個公共表單數據庫 (FORMS6.NSF) 以及 Web 服務器代碼自身中維護的。所有用戶都可以共享這個公共表單數據庫和服務器代碼。當 Web 服務器接收到 Domino Web Access HTTP 請求時,將從公共表單數據庫 (FORMS6.NSF) 中加載適當的表單,并使用來自用戶郵件數據庫的數據生成 HTTP 響應(如果有必要的話)。這些響應還可以擁有對其他元素的外部引用,這些元素包括樣式表、腳本模塊和圖像。當 Web 瀏覽器接收響應時,它會通過加載 HTML 和所有嵌入式腳本引用來呈現頁面。它還會觸發額外請求來加載外部引用。許多外部引用是一些不會發生更改的 UI 設計元素。這些元素存儲在瀏覽器的文件系統緩存中,因此,瀏覽器只需要通過網絡下載一次這些元素即可。當瀏覽器需要重新加載這些元素時,它只需從自己的緩存中抓取這些元素的副本即可。一些機密內容,比如郵件消息的正文,是由服務器標記的,所以它們沒有被緩存。 性能因素對于任何 Web 應用程序,用戶響應時間都取決于以下因素的綜合: 客戶機器的配置。 將請求從瀏覽器發送到 Web 服務器時使用的網絡傳輸時間。 Web 服務器處理請求所花費的時間。 將響應從 Web 服務器發送到瀏覽器時使用的網絡傳輸時間。 瀏覽器打開和處理響應所花費的時間。 在瀏覽器中呈現一個頁面所需要的請求數量。 客戶機器的配置隨著每個后續版本的發行,Domino Web Access 也在不斷成長,并添加了一些新特性以及使用 JavaScript 技術創建的大量用戶界面。同時,隨著該產品的增長,客戶機配置建議也在增加,以便支持所有這些特性。Domino Web Access 在低端機器上運行時不會出錯,但這些機器上的性能可能無法提供滿足您的消息傳遞解決方案所需要的性能級別。因此,就有了一個最低限度的客戶機配置以及一個推薦的客戶機配置。最低限度的客戶機配置 對于版本 6.5.3,推薦的最低限度的 Windows 客戶機配置是 Pentium III、800 MHz、256 MB 系統。對于版本 6.5.3 性能 hotfix,Domino Web Access 可以適應的最低限度客戶機配置是 400 MHz 和 128 MB RAM 系統。推薦的最低限度的 Linux 客戶機配置是 Pentium III、500 MHz、192 MB 系統。 192 MB推薦的客戶機配置 對 Internet Explorer 6.0 和 Mozilla 上的 Domino Web Access 的推薦機器配置是 Pentium IV、1 GHz、512 MB 系統。Web 服務器配置盡管 Web 服務器配置是對 Domino Web Access 性能造成影響的一個因素,但配置問題還與可伸縮性、用戶數量和網速有關。這些問題并不是特定于 Domino Web Access 的。您可以從幾篇關于服務器可伸縮性和性能的文章中查找關于如何從 Web 服務器配置中獲得更多內容的信息,這些文章可以從 Performance page on developerWorks: Lotus 中獲得。 測試為了測試性能,我們將使用 Lotus Domino 6.5.3 和安裝了性能 hotfix 的 Lotus Domino 6.5.3 在 Internet Explorer 6.0 SP1 on Windows 2000 和 Mozilla 1.7 on SuSE Linux 上都進行 16 項最常見操作的測試。這些測試也是使用不同的客戶機器配置執行的。實際生產響應時間將根據機器、內存量、網絡負荷和速度、Web 服務器負荷和其他應用程序消耗的處理時間而有所不同。測試方法 用來測量用戶客戶機響應時間的測試方法是為了模仿典型用戶使用 Domino Web Access 的方式而設計的。客戶端響應時間是使用計時表測量的。響應時間是用戶發起一個給定操作到瀏覽器呈現出某個頁面所需的總時間。 所有性能測試都由只包括 Domino 服務器和客戶機器的網絡上的一名用戶執行的。這樣做是為了努力減少網絡負荷作為性能因素所帶來的影響。此外,測試是使用 HTTP(而不是 HTTPS)執行的,沒有啟用 Lotus Instant Messaging 特性。響應時間在啟用和不啟用 GZIP 的情況下都可以測量。(關于 GZIP 的其他信息,請參閱本文后面關于 GZIP 壓縮的那一部分。)在測試之前,將清除瀏覽器的 Web 頁面緩存。所有 16 項操作都被一次運行,以填充服務器和瀏覽器緩存。這樣做是為了更近似地模擬典型用戶使用 Domino Web Access 的方式。正如前面所描述的,在第一次執行某個操作時,Domino Web Access 將下載 JavaScript 庫,然后由瀏覽器緩存這些庫。緩存代碼位于緩存中,即使在關閉瀏覽器之后,或者在重啟系統之后,也可以重用它們。因此,在第二次執行該操作時,瀏覽器會使用 JavaScript 的緩存版。每個操作都被執行了 5 次。響應時間是根據這些時間的平均值計算的。被測量的 16 項常見操作是: 打開 One Day 視圖(帶有 7 個日歷條目)。 打開 One Week 視圖(帶有 22 個日歷條目)。 打開 One Month 視圖(帶有 22 個日歷條目 )。 打開 Inbox 視圖(帶有 100 條郵件消息)。 打開一條新的消息。 根據 Who Column 對 Inbox 進行歸類。 向某人發送一條消息。 打開一條消息(23 KB)。 發送一個邀請。 創建一個沒有歷史記錄的答復。 向三個人發送一個答復。 向某個人發送一條消息,該消息帶有一個 70 KB 的附件。 向某個人發送一條消息,該消息帶有一個 1 KB 的附件。 打開一個新的 Calendar 條目。 從 Inbox 中刪除一條消息。 將一條消息從 Inbox 移動到一個文件夾中。 機器類型的影響盡管帶有 hotfix 的 Domino Web Access 可以預期地在低端機器上執行,但無可否認的是,更新、更強大的機器會帶來更好的性能。盡管在低端機器上使用 GZIP 會導致性能稍微下降,但對于更高端的 3 GHz 機器而言,此影響可以忽略不計。以下圖表顯示了帶有 hotfix 的 DWA 6.5.3,在啟用和不啟用 GZIP 的情況下使用了輕量級 UI 性能增強。(注意:輕量級 UI 是標準 DWA UI 的縮減版,對于版本 6.5.3 hotfix,它的使用是隨意的。有關的更多信息,請參閱本文后面部分的“輕量級用戶界面”一節。) 圖 1. 受 Internet Explorer 上的機器類型影響時的平均響應時間 點擊查看大圖
圖 2. 受 Mozilla 上的機器類型影響時的平均響應時間
比較 6.5.3 和 6.5.3 以及 hotfix 的性能結果為了在大多數極端情況下測試 DWA 6.5.3 hotfix 的性能,要在一些最低推薦機器上進行測量。使用帶有標準 UI 的 DWA 6.5.3 中的響應時間作為基礎,我們將使用標準 UI 的帶有 hotfix 的 DWA 6.5.3 響應時間與使用輕量級 UI 的帶有 hotfix 的 DWA 6.5.3 響應時間進行比較。Mozilla 1.7 中的響應時間在使用標準用戶界面時提高了 41%,在使用輕量級用戶界面時提高了 44%。Internet Explorer 中的響應時間在使用標準用戶界面時提高了 42%,在使用輕量級用戶界面時提高了 48%。關于輕量級用戶界面的更多信息,請參閱本文后面部分的“輕量級用戶界面”一節。以下是在 400 MHz、128 MB 的客戶機器上使用裝有 Internet Explorer 6.0 SP 4 的 Microsoft Windows 2000 所獲得的結果,以及在 500 MHz、192 MB 的客戶機器上使用裝有 Mozilla 1.7 瀏覽器的 SuSE Linux 所獲得的結果。響應時間是以秒為單位進行測量的 線路速度如何影響性能如果更好的機器等于更好的性能是真的,那么同一說法無疑對網速也是成立的。如下表所示,網速慢可能會影響性能。管理員可以用來提高較慢網絡的性能的一個方法是使用 GZIP 壓縮。GZIP 是為了通過壓縮數據提高較慢網絡的速度而專門設計的,GZIP 對高速網絡或封閉式網絡的影響很小。此外,因為瀏覽器必須解壓縮接收的數據,所以 GZIP 壓縮可能會對較慢的機器(600 GHz 或更低)產生負面影響。如果有一個包括低端機器和低速網絡的環境,那么使用 GZIP 可能會犧牲性能。網絡時間改善了,但是客戶機器上的響應時間在某些情況下可能會更慢。關于 GZIP 的更多信息,請參閱本文后面部分的“GZIP 壓縮”一節。 圖3. 受線路速度影響時的平均響應時間
提高終端用戶性能的方法除了使用 Domino Web Access 6.5.3 hotfix 實現的性能提高之外,還有其他許多設置,管理員和用戶還可以使用這些設置從 Domino Web Access 性能中獲得最大的收益。管理員可以為圖標創建 Web Site Rule。他們還可以啟用或禁用 GZIP 壓縮,并設置緩存清除的級別。通過使用 Notes.ini 設置,管理員還可以全局地應用輕量級用戶界面,或重用子窗口特性。用戶還可以設置 Domino Web Access 參數選擇來禁用拖放和就地編輯(in-place editing)功能,而且還可以選擇重用子窗口(如果管理員無法全局啟用該特性的話)。此外,還有用戶可以設置的一些推薦的 Web 瀏覽器設置。要想快速查看日程安排,則可以使用 Summary Calendar 視圖。用于圖標的 Web Site Rule為了確保圖標不被用戶重復地檢索,可以創建一個 Web Site Rule 文檔。并且可以在使用 Web Site 文檔配置宿主在 Domino 服務器上的 Web 站點時創建 Web Site Rule 文檔。通過選擇 HTTP 響應主題選項作為規則的類型,并指定它在傳入的 URL 中包含字符串 /icons/* 時返回一個使用了 364 天的 Expires 標題,您可以為圖標創建一個 Web Site Rule 文檔。 圖 4 顯示了用于圖標的 Web Site Rule 文檔的一個示例。關于 Web Site Rule 文檔的完整解釋,請參閱關于 Web Servers in the Domino Administrator help 6.5 及其更高版本的那一部分。 圖 4. Web Site Rule 文檔的設置 GZIP 壓縮在開始使用 Domino Server 6.5 時,可以使用 GZIP 壓縮來壓縮發送到瀏覽器的響應。GZIP 在網絡連接慢的情況下最有用,在這種情況下,數據傳輸耗用了用戶等待將顯示的頁面所花費的大部分時間。不過,因為瀏覽器必須解壓縮接收的數據,所以 GZIP 壓縮在較慢的機器(600 MHz 或更低)上可能會對性能產生負面影響,因此,在判定是否使用它的時候,要權衡利弊。在默認情況下,GZIP 是啟用的,但也可以通過以下 Notes.ini 設置來禁用它:iNotes_wa_GZIP_Disable=1 禁用該設置控制了針對整個服務器的響應。但是,如果您有一個既包括高端機器又包括低端機器的環境,那么使用低端機器的個別用戶可以通過其瀏覽器設置來禁用 GZIP 壓縮。在 Internet Explorer 中,可以通過選擇 Tools - Internet Options 來禁用它。在 Advanced tab of the Internet Options 對話框中,請選擇 HTTP 1.1 Settings 選項。在 Mozilla 中,可以在 Preferences - Advanced - HTTP Networking 對話框中找到用于您的瀏覽器的響應設置。注意:禁用 HTTP 1.1 可能會帶來比禁用 GZIP 更多的衍生物。瀏覽器緩存管理正如前面所描述的,在瀏覽器的文件系統緩存中,Domino Web Access 緩存了許多外部引用,比如 UI 設計元素。然后,在瀏覽器需要重新加載這些元素時,它只需從其自身的緩存中抓取這些元素的副本即可。更好地調優性能的一個方法是,調整緩存清除的級別。在開始使用 Lotus Domino 6.5 時,管理員可以通過定義在緩存中保存哪些元素(樣式表、靜態代碼、Web 頁面、URL 等)來設置緩存清除的接別。對于某些管理員,他們甚至可能不愿意在緩存中保存那些靜態元素。Notes.ini 設置,即 iNotes_WA_LogoutScrubType,定義了 6 種不同的安全設置,從默認設置(保存一些來自郵件文件的設計信息)到最安全的選項(在退出的時候刪除所有對 Domino Web Access 的追蹤,并刪除 Temporary Internet 文件夾中的其他所有 Web 頁面)。使用該設置,可以在您想要的性能與您需要的安全性之間進行權衡。下表顯示了可以使用的緩存清除范圍。從性能的觀點來看,級別 3 和級別 5 是最不想要的級別,因為它們刪除了公共表單數據庫的內容。不過,在所有情況下,當用戶退出系統時,都將從 Temporary Internet 文件夾中刪除包含用戶特定信息的頁面