国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

WebSphere Enterprise Scheduler 規(guī)劃管理(1)

2019-11-18 12:43:05
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  引言
  WebSphere® Business Integration Server Foundation Version 5.1(以前為 WebSphere application Server EnterPRise)中的調(diào)度程序服務(wù)能夠使 J2EE 操作具有高性能、高可用性、持久性和事務(wù)調(diào)度等特征。
  
  調(diào)度程序包含以下兩個(gè)組件
  
  調(diào)度程序資源
  調(diào)度程序 API。
  
  調(diào)度程序資源表示為一個(gè)調(diào)度程序?qū)嵗?WebSphere Application Server java™ Naming and Directory Interface(JNDI)中可用。每個(gè)調(diào)度程序資源都有一些治理它的行為的獨(dú)特特性;例如,在哪個(gè)數(shù)據(jù)庫(kù)中存儲(chǔ)持久性調(diào)度。調(diào)度程序資源是使用標(biāo)準(zhǔn) WebSphere Application Server 治理控制臺(tái)或 AdminControl 腳本對(duì)象配置的。
  
  調(diào)度程序 API 是一個(gè) Java 接口,可以用于創(chuàng)建和治理任務(wù)。該 API 可以通過(guò)任何的 J2EE 服務(wù)器應(yīng)用程序(Enterprise Java Beans 和 servlets)訪問(wèn)。
  
  調(diào)度程序能夠執(zhí)行兩種類型的任務(wù):
  
  調(diào)用無(wú)狀態(tài)會(huì)話 Enterprise Java Bean(EJB)。
  發(fā)送 Java Message Service(JMS)消息。
  
  調(diào)度程序?qū)?shù)據(jù)存儲(chǔ)在 WebSphere Application Server 支持的任何數(shù)據(jù)庫(kù)中,并使用 WebSphere Application Server 事務(wù)治理器。因此所有的調(diào)度程序操作都是事務(wù)性和持久性的;每個(gè)任務(wù)都能保證一次運(yùn)行成功。假如有一個(gè)任務(wù)因?yàn)槟撤N原因執(zhí)行失敗,那么整個(gè)操作都會(huì)回滾。
  
  調(diào)度程序可以使應(yīng)用程序開發(fā)人員在任務(wù)的生命周期內(nèi)創(chuàng)建自己的無(wú)狀態(tài)會(huì)話 EJB 以便接收事件通知,答應(yīng)使用自定義日志實(shí)體或工作流應(yīng)用程序插件。無(wú)狀態(tài)會(huì)話 EJB 也可以用于提供普通日歷。開發(fā)人員可以使用提供的日歷 bean,也可以為他們現(xiàn)有的業(yè)務(wù)日歷創(chuàng)建一個(gè)日歷 bean。
  
  WebSphere Business Integration Server Foundation V5.1 Information Center 中介紹了調(diào)度程序服務(wù),其中描述了基本的安裝和配置過(guò)程、簡(jiǎn)化的編程示例,并引用了調(diào)度程序 API JavaDoc。
  
  規(guī)劃
  調(diào)度程序是 WebSphere Business Integration Server Foundation 產(chǎn)品的一部分,在運(yùn)行調(diào)度程序活動(dòng)時(shí)都需要用到調(diào)度程序。調(diào)度程序服務(wù)假如要訪問(wèn)資源,要求先配置好調(diào)度程序資源和 J2EE 應(yīng)用程序。每個(gè)資源都是以大致相同的方式配置為 DataSource 或 JMS Queue,可以在多個(gè)配置域(服務(wù)器、節(jié)點(diǎn)或單元)中創(chuàng)建。您可以創(chuàng)建多個(gè)調(diào)度程序配置資源,并通過(guò)一個(gè)或多個(gè) J2EE 應(yīng)用程序訪問(wèn)每個(gè)調(diào)度程序資源。
  
  用戶角色
  調(diào)度程序服務(wù)需要有幾個(gè)用戶角色來(lái)規(guī)劃、開發(fā)、治理和操作該調(diào)度服務(wù):
  
  Administrator:
  在其組織的基礎(chǔ)設(shè)施下對(duì)調(diào)度程序的運(yùn)用進(jìn)行構(gòu)架。包括創(chuàng)建恰當(dāng)?shù)恼{(diào)度程序配置資源、調(diào)優(yōu)每個(gè)調(diào)度程序?qū)嵗閼?yīng)用程序分配資源以及解決問(wèn)題。
  Developer:
  創(chuàng)建與調(diào)度程序服務(wù) API 相交互的 J2EE 應(yīng)用程序,包括治理應(yīng)用程序(控制臺(tái)應(yīng)用程序)和接收事件的應(yīng)用程序(調(diào)度程序需要與之交互的應(yīng)用程序)。
  Operator:
  監(jiān)控調(diào)度程序以查看是否有錯(cuò)誤,并運(yùn)用 Developer 編寫的應(yīng)用程序來(lái)響應(yīng)錯(cuò)誤環(huán)境。
  
  資源配置
  每個(gè)調(diào)度程序配置資源都有一些參數(shù)來(lái)為資源治理調(diào)度程序引擎的運(yùn)轉(zhuǎn)方式,以及如何在 JNDI 中定位資源。假如使用治理控制臺(tái)配置調(diào)度程序資源,那么屏幕就會(huì)像圖 1 那樣:
  
  
圖 1. 調(diào)度程序配置面板

  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖一)

  假如兩個(gè)調(diào)度程序資源在不同級(jí)的作用域中使用同一個(gè) JNDI 名稱進(jìn)行配置,那么最小粒度級(jí)的作用域優(yōu)先。
  
  
圖 2. AccountReport 調(diào)度程序配置面板

  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖二)

  每個(gè)調(diào)度程序配置資源都具有以下參數(shù)(圖 2 也列出了這些參數(shù)):
  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖三)

  
  輪詢守護(hù)程序
  調(diào)度程序資源會(huì)為每個(gè)提供調(diào)度程序服務(wù)的服務(wù)器分配一個(gè)輪詢守護(hù)線程。因此,假如調(diào)度程序資源是在節(jié)點(diǎn)級(jí)作用域中配置的話,在該節(jié)點(diǎn)中的每個(gè)服務(wù)器都會(huì)分配到一個(gè)在其上運(yùn)行的輪詢守護(hù)程序。
  
  輪詢守護(hù)程序負(fù)責(zé)從數(shù)據(jù)庫(kù)加載任務(wù)。守護(hù)程序使用在調(diào)度程序配置資源中設(shè)置的 Poll Interval 來(lái)確定數(shù)據(jù)庫(kù)輪詢時(shí)需要等待的時(shí)間。假如這個(gè)值為 60,那么 對(duì)于所有在此周期內(nèi)設(shè)置的待執(zhí)行的任務(wù)而言,該守護(hù)每 60 秒鐘會(huì)試著加載一下任務(wù)。
  
  
圖 3. 間隔 60 秒的輪詢守護(hù)

  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖四)

  Poll Interval 設(shè)置確定重復(fù)的執(zhí)行任務(wù)的最小周期,同時(shí)也確定一次裝入內(nèi)存的任務(wù)數(shù)。因此,創(chuàng)建一個(gè) 24 小時(shí)的大輪詢間隔并不是最佳的選擇,即使你一天只運(yùn)行一次重復(fù)的任務(wù)。每個(gè)任務(wù)會(huì)裝入內(nèi)存從而消耗資源。創(chuàng)建一個(gè) 1 秒鐘的小輪詢間隔可能看起來(lái)是恰當(dāng)?shù)倪x擇,然而,這樣會(huì)生成其他的數(shù)據(jù)庫(kù)爭(zhēng)奪。最好的做法是選擇 5 秒至 3600 秒(1 小時(shí))之間的值,視您的任務(wù)需要的最小重復(fù)間隔而定。
  
  Work Manager
  用于調(diào)度程序配置資源的 Work Manager 設(shè)置提供給調(diào)度程序固定數(shù)目的線程,以便在其上分配工作,同時(shí)也提供給它一個(gè)用于確定如何將 J2EE 上下文信息分配到線程中的策略。
  
  
圖 4. 缺省的 WorkManager 配置面板

  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖五)

  應(yīng)用到調(diào)度程序中的 WorkManager 參數(shù)如下所示:
  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖六)

  WorkManager 可以在多個(gè)調(diào)度程序之間共享,并可用于非調(diào)度程序目的。假如您想為多個(gè)應(yīng)用程序和服務(wù)建立單個(gè)的線程輪詢和警報(bào)輪詢的話,這將是很有用的。請(qǐng)記住,雖然 WorkManager 可以在單元和節(jié)點(diǎn)作用域上配置,但是線程輪詢和警報(bào)輪詢是在每個(gè)活動(dòng)服務(wù)器上復(fù)制的。圖 5 闡述了不同的服務(wù)器如何具有不同的 WorkManager 實(shí)例,卻具有相同數(shù)目的可用線程和警報(bào)。
  
  
圖 5. 共享的節(jié)點(diǎn)級(jí) WorkManager

  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖七)

  WorkManager 服務(wù)
  WorkManager 具有幾個(gè)服務(wù)上下文,在 Scheduled 任務(wù)執(zhí)行時(shí)可以復(fù)制到其上。只有當(dāng)服務(wù)是在用于創(chuàng)建和執(zhí)行任務(wù)的應(yīng)用服務(wù)器上安裝和啟用時(shí)才會(huì)復(fù)制服務(wù),這些服務(wù)中的每一個(gè)都是這樣的。所有的 WorkManager 服務(wù)上下文都只應(yīng)用到 BeanTaSKINfo 任務(wù)中。
  
 WebSphere Enterprise Scheduler 規(guī)劃治理(1)(圖八)

  
  高可用性
  可以通過(guò)創(chuàng)建副本調(diào)度程序資源或者在集群中創(chuàng)建一個(gè)資源這樣來(lái)配置調(diào)度程序服務(wù),使之具有高可用性。WebSphere Application Server Enterprise Version 5.0.2 和 WebSphere Business Integration Server Foundation Version 5.1 中的調(diào)度程序利用租用權(quán)的概念來(lái)使獨(dú)立的輪詢守護(hù)程序之間的沖突最小化。許多的調(diào)度程序引擎共同競(jìng)爭(zhēng)租用權(quán),贏得租用權(quán)的調(diào)度程序就會(huì)運(yùn)行任務(wù)。假如某一調(diào)度程序沒(méi)有得到租用權(quán),那么輪詢守護(hù)程序就不會(huì)試著去加載和運(yùn)行任何任務(wù)了。
  
  在調(diào)度器間共享的租用權(quán)會(huì)使用同樣的 JNDI 名稱和數(shù)據(jù)庫(kù)表。因此在集群級(jí)上配置的調(diào)度程序資源就會(huì)自動(dòng)地利用租用權(quán)了。
  
  租用權(quán)是利用每個(gè)調(diào)度程序的 WorkManager 的獨(dú)立警報(bào)線程獲得的。嘗試獲取租用權(quán)的時(shí)間會(huì)略小于 Poll Interval(Poll Interval 的 64%)。在輪詢間隔的 80% 的時(shí)間內(nèi)租用權(quán)本身就會(huì)過(guò)期。因此,假如輪詢間隔是 100 秒,每隔 80 秒租用權(quán)就會(huì)過(guò)期。每隔 64 秒(80 * .8)租用權(quán)警報(bào)就會(huì)試著去更新或獲得一個(gè)租用權(quán)。假如調(diào)度程序變?yōu)椴豢捎茫敲凑{(diào)度程序不可用的最大時(shí)間為 ((PI * .8) + (PI * .64)),相當(dāng)于 80 秒(租用權(quán)的期限)加上 64 秒(備份調(diào)度器獲得該租用權(quán)的時(shí)間),即總共為 144 秒。
  
  調(diào)度程序在 Version 5.0.2 之后的版本運(yùn)用不同的算法來(lái)設(shè)置租用權(quán)時(shí)間,這種算法設(shè)置的時(shí)間獨(dú)立于輪詢間隔。這就可以使客戶使用一個(gè)更大的輪詢間隔,而不犧牲可用性。在 5.0.2 以后的版本中,租用權(quán)每隔 60 秒過(guò)期,并且每隔 40 秒由所有的守護(hù)程序更新或獲得。因此,調(diào)度器變?yōu)椴豢捎玫淖畲髸r(shí)間為 100 秒,與輪詢間隔無(wú)關(guān)。
  
  關(guān)于租用權(quán)
  Version 5.0.2 之前的版本不能夠使用租用權(quán)。假如添加多余的調(diào)度程序,可用性就會(huì)增加,然而爭(zhēng)奪也會(huì)增加。假如不想犧牲性能,您就不能夠增加超過(guò)一個(gè)的冗余調(diào)度程序。每個(gè)任務(wù)都會(huì)在每個(gè)服務(wù)器上加載并運(yùn)行,但只有一個(gè)會(huì)運(yùn)行成功。檢測(cè)到?jīng)_突時(shí)就會(huì)簡(jiǎn)單地終止所有其他的副本任務(wù)。
  
  假如您正在使用的調(diào)度程序所用的數(shù)據(jù)庫(kù)是利用 Version 5.0 或 5.0.1 版本的調(diào)度程序所提供的數(shù)據(jù)描述語(yǔ)言(Data Definition Language,DDL)文件創(chuàng)建的,那么您就不會(huì)有 Lease Manager。要想激活 WebSphere Application Server Enterprise Version 5.0.2 或 WebSphere Business Integration Server Foundation Version 5.1 中的 Lease Manager,只需要簡(jiǎn)單地創(chuàng)建調(diào)度程序所提供的 DDL 文件中提到的新的 Lease Manager 表即可。通過(guò)重新運(yùn)行創(chuàng)建這些表的 DDL 就可創(chuàng)建新的表,不會(huì)影響到現(xiàn)有的數(shù)據(jù)(關(guān)于如何創(chuàng)建這些表的細(xì)節(jié)請(qǐng)參見參考資料)。一旦創(chuàng)建這些表之后,調(diào)度程序就會(huì)自動(dòng)啟動(dòng),使用租用權(quán)來(lái)治理多余的調(diào)度程序連接。
  
  在圖 6 中,調(diào)度程序資源在同一個(gè)單元中的三個(gè)不同的服務(wù)器上存有副本。每個(gè)調(diào)度程序(JNDI 名稱為 sched/Main)引用同樣的 JDBC DataSource 和 Wor

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 普陀区| 老河口市| 贵州省| 樟树市| 庐江县| 新巴尔虎左旗| 特克斯县| 百色市| 怀柔区| 黄山市| 阳西县| 兴仁县| 腾冲县| 宾阳县| 兰考县| 龙海市| 株洲县| 商都县| 张家口市| 咸宁市| 静海县| 信宜市| 唐海县| 海南省| 建湖县| 衡山县| 山东省| 项城市| 宣汉县| 长白| 富蕴县| 平罗县| 清原| 巴南区| 龙州县| 沙河市| 浮山县| 竹溪县| 清流县| 涪陵区| 宁都县|