Sun Java System Communications Express 6 2005Q4 管理指南

支援 Address Book Server 的水平可伸縮性

在舊版 Sun Java System Communications Express 中,特定網域的個人通訊錄項目儲存在單一 LDAP 位置中,該位置由在 db_config.properties 檔案中定義的 defaultserver 實例表示。db_config.properties 檔案位於網域 personalstore.properties 檔案指向的目錄中。例如,uwc-install/WEB-INF/config/ldappstore

此部署無法延展成在每個「個人通訊錄」中支援大量使用者與連絡人。為消除此限制,Sun Java System Communications Express 6.2 中的 psRoot 屬性可讓管理員佈建使用者,從而不同使用者的 PAB 資料可以分布在不同的 LDAP 位置上。

例如,ldap://mydir.com:389/piPStoreOwner=jsmith,o=siroe.com,o=PiServerDb

圖 3-1 提供了用來水平延展 Addressbook Server 的架構之高層次概觀。

「通訊錄水平延展性」架構的重要元件有:

「個人存放區」維護使用者的通訊錄資訊。它包含使用者以通訊錄中所有項目建立的所有通訊錄定義。「個人存放區」會以 URL 顯示,描述它們所在的目錄實例,以及特殊目錄實例中的 DN。

DB 包含個人存放區集合,如圖 3-1 所示,可透過 Address Book Server 存取 DB 中的任何號碼。每個 DB 是由定義該 DB 連線參數的 DB-ID 定義。DB 可以有不同的類型,並且可以指向不同的 DB 位置。

DBMap 是相同類型 DB 的集合。每個 DBMap 有一個 ID,它會指引到該 DBMap 的配置資訊。

圖 3–1 通訊錄的水平延展性

通訊錄水平可伸縮性

psRoot 是使用者的 LDAP 屬性,指定儲存使用者通訊錄項目的主機、目錄實例的連接埠和 DN。psRoot 的格式為:ldap://ldap_host:ldap_port/DN

psRoot 屬性的值決定 DB 的類型和位置。

在 psRoot 範例中,ldap://mydir.com:389/piPStoreOwner=jsmith,o=siroe.com,o=PiServerDb

ldap:// 表示使用 LDAP DB 外掛程式存取使用者的通訊錄個人存放區。

mydir.com:389 指定 LDAP 主機和連接埠。

piPStoreOwner=jsmith,o=siroe.com,o=PiServerDb 指定個人存放區的 DN。


備註 –

Addressbook Server 未提供任何公用程式,以根據任何延展性策略為使用者分配 psRoot 值。管理員需要設定最符合社團組織的特定策略,並使用自訂的程序檔為該策略設定 psRoot 值。


可使用網域特定的 personalstore.properties 檔案中的 db.UserPsRoot 參數開啟或關閉 psRoot 屬性。將參數設定為「false」,以使用 db_config.properties 檔案中的 defaultserver 參數。將參數設定為「true」,以使用使用者的 psRoot 值。必須為 psRoot 中使用的每個唯一 Directory Server 實例提供在 db_config.properties 檔案中配置通訊錄個人存放區參數列出的個人存放區參數。在執行階段中,psRoot 屬性值將被解析為使用 db-key.ldaphost db-key.ldapport 的目錄實例,其中 db-key 是能夠區分不同實例的任意字串。如果無法找到與 db-key.ldaphostdb-key.ldapport 相符的實例,則將使用 defaultserver 實例。

自動設定 psRoot 值

當新使用者登入時,會將使用者項目中的 psRoot 屬性設定為預設值。

對於新使用者,使用 personalstore.properties 檔案中定義的 psRoot 式樣,以及 db_config.properties 檔案中的 defaultserverhostdefaultserverPort values 建構 psRoot 值。例如,使用預設 psRoot 式樣時,預設 psRoot 值的格式為:

ldap://defaultserver_host :defaultserver_port/piPStoreOwner=%U,o=%D,o=PiServerDb

其中,

%U = 使用者的登入 ID,例如 jsmith。

%D = 使用者的網域,例如 siroe.com。