EJB 計時器服務設定

請利用這個頁面來配置和管理特定 Enterprise JavaBeans (EJB) 儲存器的 EJB 計時器服務。

如果要檢視這個管理主控台頁面,請按一下伺服器 > 伺服器類型 > WebSphere 應用程式伺服器 > server name > EJB 儲存器設定 > EJB 計時器服務設定

持續性和非持續性計時器可以同時存在,且持續性和非持續性配置並不互斥。 您的應用程式有可能同時使用持續性和非持續性計時器。

當計時器經歷伺服器關機及重新啟動而必須持續存在時,請使用持續性計時器。 否則,當伺服器關機也必須取消計時器時,請使用非持續性計時器。

當持續性計時器因伺服器無法使用而未發動時,在伺服器重新啟動之後,先前所遺漏的嘗試,這時會加以回復。 當非持續性計時器因伺服器無法使用而未發動時,由於伺服器關機會將非持續性計時器取消,因此先前所遺漏的嘗試,並不會回復。

持續性 EJB 計時器配置

使用內部 EJB 計時器服務排程器實例

產品提供 EJB 計時器服務使用的內部排程器實例。 內部排程器實例是預先配置給基本 EJB 計時器功能,它提供 EJB 計時器服務的有限配置設定。

您可以指定要利用內部排程器實例來管理您的持續性計時器作業。 它們會持續保存在伺服器程序相關聯的 Derby 資料庫中。選取這個選項,會排除「使用自訂排程器實例」選項。

預設值是內部排程器實例。另外,您也可以使用自訂排程器實例。

使用自訂排程器實例

您可以定義自訂排程器實例來執行 EJB 計時器服務的進階配置。

自訂排程器實例所提供的配置選項,比內部 EJB 計時器服務預先配置的排程器實例還多。 在叢集環境中執行時,您可以定義自訂排程器實例,讓所有叢集成員以單一排程器實例來執行。 這個定義使在某個叢集成員上建立的持續性 EJB 計時器,也能夠在其他叢集成員上執行。 提供自訂排程器實例,也可以將持續性「EJB 計時器」放在其他已排定作業的相同資料庫中維護。選取這個選項,會排除「使用內部 EJB 計時器服務排程器實例」選項。

您可以定義一個自訂排程器實例,將排程器服務與 EJB 計時器服務兩者所用的執行緒隔開。 自訂排程器實例的 EJB 計時器服務執行緒可以共用來搭配非持續性計時器使用,您也可以配置專供非持續性計時器使用的個別執行緒儲存區。 即使有執行緒儲存區專供 EJB 計時器使用,但如果可用的執行緒不足,計時器有效期限也可能會落後。 您必須評估計時器的數目及其到期頻率,以建立執行緒的數目。

資料來源 JNDI 名稱

指定儲存了這個 EJB 儲存器的持續性 EJB 計時器之資料來源的 Java 命名和目錄介面 (JNDI) 名稱。 名稱空間中任何可用的資料來源都可以搭配 EJB 計時器來使用。

多個 EJB 儲存器可以共用單一資料來源,同時可以指定表格字首來使用不同的表格。

參考資訊
資料類型 String
預設值 jdbc/DefaultEJBTimerDataSource

資料來源別名

指定用來存取資料來源之使用者名稱和密碼的鑑別別名。

參考資訊
資料類型 String

表格字首

加在 EJB 計時器服務表格名稱前面的字串(TASK、TREG、LMGR 和 LMPR)。 這些表格會在伺服器啟動期間建立(如果它們當時不存在的話)。 請參閱排程器服務,以取得手動建立這些表格的相關資訊。 如果每個實例都指定不同的字首字串,多個獨立的 EJB 計時器服務便可以共用同一個資料庫。 如果用 removeAutomaticEJBTimers 指令來從指定的排程器移除計時器,這個排程器必須有唯一表格字首。 否則,可能會移除超出預期的計時器。

參考資訊
資料類型 String
預設值 EJBTIMER_

輪詢間隔

指定 EJB 計時器服務常駐程式輪詢資料庫的間隔。 每一個輪詢作業都可能很耗費資源。如果間隔很短而且排定多項作業,輪詢可能會用掉大部分的系統資源。 新計時器倘若設為比這個間隔更快到期,那麼該計時器可能會等到間隔結束時才執行。 如果這個值太大,可能會有大量計時器事件載入記憶體中,因為每次都會載入下一個輪詢間隔所發生的全部計時器事件。

參考資訊
資料類型 Integer
單位
預設值 300
範圍 3 至 1800

計時器執行緒數目

用來執行並行 EJB 計時器作業的執行緒數目。 將計時器執行緒數目設定為零,會停用 EJB 計時器服務。

參考資訊
資料類型 Integer
預設值 1
範圍 0 至 500

排程器 JNDI 名稱

指定用來管理及持續保存 EJB 計時器之自訂排程器實例的 JNDI 名稱。 只有在選取使用自訂排程器實例時,才會使用這個欄位。 內部 EJB 計時器服務排程器實例配置資訊,並不適用於指定的排程器實例。

參考資訊
資料類型 String

非持續性 EJB 計時器配置

重試次數上限

指定失敗逾時的重試次數上限。 如果逾時在重試時成功,伺服器會停止嘗試執行逾時。 如果重試失敗,伺服器會繼續重試,直到逾時成功,或到了逾時限制。 到了逾時限制之後,伺服器就不再嘗試執行逾時,即使逾時尚未成功,也是如此。 預設值 -1 表示重試不限次數。 0 值表示不重試,這不符合規格。 1 值或以上,表示允許的特定重試次數。

參考資訊
資料類型 Integer
預設值 -1
範圍 -1 或以上

重試時間間隔

指定逾時失敗的重試間隔。 不論這裡配置的間隔為何,第一次重次一律立即進行。 所有其他次重試一律要等待這裡指定的間隔。 0 值表示所有重試都是立即進行。 1 值或以上,表示重試必須等待這個特定秒數。

參考資訊
資料類型 Integer
預設值 300 秒
範圍 0 或以上

共用持續性計時器所配置的執行緒儲存區

指定非持續性計時器與持續性計時器共用執行緒儲存區。 如果持續性計時器使用預設的內部排程器實例,就會利用「持續性 EJB 計時器配置」區段所指定的配置設定,來配置共用的執行緒儲存區。 如果持續性計時器使用自訂排程器,就會將執行緒儲存區配置指定在該自訂排程器的配置中。

建立非持續性計時器的個別執行緒儲存區

指定非持續性計時器與持續性計時器不共用執行緒儲存區。 相反地,對於非持續性計時器,會建立一個專用的唯一執行緒儲存區。

計時器執行緒數目

指定非持續性計時器所用的唯一執行緒儲存區中所能使用的執行緒數目。 只有在非持續性計時器與持續性計時器不共用執行緒儲存區時,才能使用這個配置選項。 這個配置選項有別於「持續性 EJB 計時器配置」區段中的「計時器執行緒數目」配置選項,因為該選項只適用於使用預設內部排程器實例的持續性計時器。

參考資訊
資料類型 Integer
預設值 1
範圍 0 至 500


檔名: uejb_timerservice.html