WebSphere WebSphere Enterprise Service Bus, Version 6.0.1 作業系統: AIX, HP-UX, Linux, Solaris, Windows

分散式應用程式中的國際化挑戰

在出現網際網路型商業計算模型後, 應用程式中包含越來越多在不同的地理區域運作的用戶端和伺服器。

這些差異對設計穩固的主從式基礎架構的作業帶來了下列挑戰。

用戶端和伺服器可以在具有不同排列架構或字碼集的電腦上執行

用戶端和伺服器可以位於具有不同排列架構的電腦中: 用戶端可以位於小序排列法 CPU 中, 而伺服器程式碼在大序排列法 CPU 中執行。用戶端可能會想呼叫伺服器上的商業方法,且該伺服器所執行的字碼集與用戶端不同。

主從式基礎架構必須定義確切的排列法以及字碼集追蹤和轉換規則。Java 平台利用 Java 虛擬機器,以獨特的方式幾乎消弭了這些問題,此虛擬機器將 UCS-2 格式的所有字串資料編碼,並以大序排列法格式將每項資料外部化。JVM 利用一組平台專用程式集, 與原生平台連結。這些程式會執行 UCS-2 與平台的原生字碼集之間的任何必要的字碼集轉換。

用戶端和伺服器可以在具有不同的語言環境設定的電腦上執行

用戶端和伺服器程序可以使用不同的語言環境設定。例如, 西班牙文用戶端可能會對位於美式英文伺服器中的物件呼叫商業方法。某些商業方法在本質上區分語言環境; 例如,給定一個傳回已排序字串清單的商業方法,西班牙文用戶端預期該清單根據西班牙文對照順序排序, 而非以伺服器的英文對照順序排序。由於資料擷取和排序程序在伺服器中執行, 因此用戶端的語言環境必須可用來執行合法排序。

在其中伺服器必須傳回包含日期、時間、貨幣、異常狀況訊息(根據用戶端的文化預期格式化)等等之字串的案例中,也適用類似的考量。

用戶端和伺服器可以位於不同的時區

用戶端和伺服器程序可以在不同的時區執行。目前為止, 所有的國際化研究和資源主要都專注於字碼集和語言環境相關問題。一般而言,他們忽略時區問題, 即使時區以及語言環境可能對商業方法極為敏感。

例如, 假設某位供應商要求在 2:00 PM 以前收到訂單, 並在同一天 5:00 PM 以前處理完畢。當然, 給定的時間是處理訂單之伺服器所在的時區。而知道用戶端的時區是非常重要的, 這樣才可以提供正確的時間給在其他時區的客戶,以進行同日處理。

其他的受時區影響的作業包括記載到伺服器的戳印時間訊息, 以及存取檔案或資料庫資源。日光節約時間的概念使得時區問題更加複雜。

Java 2 Platform Enterprise Edition (J2EE) 支援含不同排列架構和字碼集的電腦所執行的應用程式元件。它並不特別支援含不同語言環境和時區的電腦所執行的應用程式元件。

解決遠端應用程式元件之間的語言環境和時區不符的慣用方法是, 在所有的商業方法上將傳送用戶端語言環境或時區所需的一或多個額外參數傳遞至伺服器。雖然這很簡單, 但是在 Enterprise JavaBeans (EJB) 應用程式中使用時,這項技術有下列限制:

國際化服務能夠處理語言環境和時區不符所帶來的挑戰,而且沒有傳統技術的限制。這項服務是以系統化的方式來管理包括用戶端應用程式、 Enterprise Bean 和 Servlet 在內的各種 EJB 應用程式元件的國際化環境定義發行版。如果需要詳細資訊, 請參閱 WebSphere Application Server Network Deployment 資訊中心。


Concept topic

使用條款 | 評比此網頁

「時間戳記」圖示前次更新: 5 Mar 2006
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6rxmx/index.jsp?topic=/com.ibm.websphere.wesb.doc.nl1_6.0.1\doc\covw_i18n_distrib.html

(C) Copyright IBM Corporation 2005. All Rights Reserved.
本資訊中心採用 Eclipse 技術。(http://www.eclipse.org)