日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Tom Baeyens談過(guò)程虛擬機(jī)

 夜郎 2008-08-07

作者:Gavin Terrill譯者 胡鍵 來(lái)源:InfoQ 酷勤網(wǎng)收集 2008-05-05

InfoQ:您能向InfoQ的讀者介紹一下PVM概念的歷史和目的嗎?

Tom:過(guò)程虛擬機(jī)(Process Virtual Machine)是我們?cè)?a id="y70y15" href="http:///">jBPM探索過(guò)程中核心概念的最終產(chǎn)物。

jBPM一開(kāi)始使用被稱(chēng)為jPDL的單一過(guò)程語(yǔ)言,但是在成為JBoss一部分后不久,用戶就一直問(wèn)我們是否也能支持BPEL。那時(shí)我意識(shí)到j(luò)PDL實(shí)現(xiàn)和BPEL有許多重疊的地方。自從那時(shí)起,我們就一直從過(guò)程語(yǔ)言特殊部分中抽取公共部分。

jBPM 3已經(jīng)有了能工作的全部概念,它能運(yùn)行多種過(guò)程語(yǔ)言,如天生就支持jPDL和BPEL。但是缺點(diǎn)是它仍是一個(gè)大代碼庫(kù),不是真正的模塊。因?yàn)锽PM和工作流領(lǐng)域完全都是各自為政,多種過(guò)程語(yǔ)言的需要日益明顯。因此,我們需要一個(gè)更模塊化的方法。

那就是過(guò)程虛擬機(jī)出現(xiàn)的原因。它是一個(gè)用來(lái)構(gòu)建和執(zhí)行過(guò)程圖的代碼庫(kù)。過(guò)程語(yǔ)言的本地實(shí)現(xiàn)可以構(gòu)建于過(guò)程虛擬機(jī)之上。此外,它可以運(yùn)行在任何Java環(huán)境之內(nèi),不論它是標(biāo)準(zhǔn)Java、企業(yè)Java,還是SEAM或Spring。

InfoQ:為什么這很重要?

Tom:一 方面,業(yè)務(wù)過(guò)程管理(BPM)和工作流領(lǐng)域完全都是各自為政。有很多針對(duì)特定用例和環(huán)境的不同類(lèi)型的過(guò)程語(yǔ)言。這和領(lǐng)域特定語(yǔ)言(DSL)有些相似;不是 一門(mén)語(yǔ)言就可以把全部事情都搞定。目前,所有這些語(yǔ)言都有一套自己的單片式(monolithic)引擎,這并不實(shí)用,而且它們也很難包含到一個(gè)應(yīng)用之 中。

過(guò)程虛擬機(jī)提供了一個(gè)簡(jiǎn)單的統(tǒng)一結(jié)構(gòu)來(lái)使這些過(guò)程語(yǔ)言運(yùn)行在一個(gè)核心技術(shù)之上。

另一方面,Java領(lǐng)域也同樣是分裂的。與那些必須在一個(gè)單獨(dú)服務(wù)器上隔離運(yùn)行的傳統(tǒng)過(guò)程引擎不同,過(guò)程虛擬機(jī)可以內(nèi)嵌到你的應(yīng)用中運(yùn)行,不管什么Java環(huán)境。這大大降低了使用過(guò)程技術(shù)的項(xiàng)目的門(mén)檻,因?yàn)檫^(guò)程持久化可以被透明地與應(yīng)用持久化集成。

InfoQ:應(yīng)用開(kāi)發(fā)人員需要使用過(guò)程虛擬機(jī)本身工作嗎?

PVM uml classes Tom:絕大多數(shù)的應(yīng)用開(kāi)發(fā)人員不用使用過(guò)程虛擬機(jī)本身工作,而是使用構(gòu)建在它之上的一種過(guò)程語(yǔ)言,如jPDL、BPEL或XPDL。

但是,應(yīng)用開(kāi)發(fā)人員了解過(guò)程虛擬機(jī)基本概念還是很重要的。就像開(kāi)發(fā)人員為了使用關(guān)系數(shù)據(jù)庫(kù)而需了解表、列、主鍵和SQL查詢(xún)基本概念一樣,他們需要了解過(guò)程虛擬機(jī)概念,如過(guò)程定義、執(zhí)行異常和異步延拓(continuation)。

InfoQ:Bull現(xiàn)在已經(jīng)與JBoss合作來(lái)支持PVM概念——你們?cè)诤推渌献骰锇楣彩聠幔?br id="y70y48">
Tom:Bull的確和我們就過(guò)程虛擬機(jī)進(jìn)行合作。他們貢獻(xiàn)了過(guò)程虛擬機(jī)中的一些基礎(chǔ)功能,并主導(dǎo)BPEL和XPDL活動(dòng)實(shí)現(xiàn)。還有些其他公司尚在聯(lián)絡(luò)中,但是很遺憾我們還不能透露他們。但是我們看到明顯的跡象表明,過(guò)程虛擬機(jī)將鞏固BPM領(lǐng)域中的Java的勢(shì)力。

InfoQ:到現(xiàn)在為止,有哪些主要挑戰(zhàn)是你們不得不克服的?

Tom:目前關(guān)于分析、實(shí)現(xiàn)和服務(wù)編制存在的混淆。對(duì)于過(guò)程虛擬機(jī)的應(yīng)用,我們注意到了3個(gè)清晰分離的用例。讓我們來(lái)討論它們,并強(qiáng)調(diào)哪種過(guò)程語(yǔ)言最適合哪個(gè)用例:
  1. 對(duì)實(shí)現(xiàn)的分析:這是當(dāng)今單純的(pure-play)BPM套件的目標(biāo)。從一個(gè)分析圖開(kāi)始,然后將其轉(zhuǎn)換成可執(zhí)行的軟件。許多傳統(tǒng)廠商試圖用大量魔法掩蓋分析過(guò)程圖和可執(zhí)行軟件間的重大區(qū)別。

    這暗示著:圖是負(fù)責(zé)需求的非技術(shù)人員和負(fù)責(zé)自動(dòng)化的技術(shù)人員之間重要的溝通工具。但是大體上,沒(méi)有技術(shù)手段能夠從非技術(shù)人員的輸入產(chǎn)出可用于生產(chǎn)環(huán)境的軟件。

    要 使分析人員和開(kāi)發(fā)人員之間能夠協(xié)作,可執(zhí)行過(guò)程語(yǔ)言就必須足夠靈活完全匹配分析圖。像可自定義活動(dòng)實(shí)現(xiàn)和事件監(jiān)聽(tīng)器這樣的特性對(duì)于確保分析人員在圖變得可 執(zhí)行之后仍能認(rèn)出它來(lái)說(shuō)至關(guān)重要。jPDL非常適合這個(gè)用途。它還提供了一個(gè)與Java技術(shù)的清晰集成,一個(gè)開(kāi)發(fā)人員喜歡的簡(jiǎn)潔、易讀的XML語(yǔ)法。 XPDL也支持這個(gè)用例。XPDL的語(yǔ)法更加復(fù)雜和缺乏可讀性,但是它的移植性更好,因?yàn)楦嗟膹S商正在采用這種標(biāo)準(zhǔn),雖然緩慢但是穩(wěn)定。

  2. 異步Java架構(gòu):就使用異步架構(gòu)來(lái)說(shuō),Java的確沒(méi)提供吸引眼球的解決方案。事實(shí)上,這是個(gè)大麻煩。

    一 方面,企業(yè)平臺(tái)有用于異步消息的JMS和EJB定時(shí)器。但是,那些都非常的底層。你需要很多部署描述符來(lái)支持一個(gè)長(zhǎng)期運(yùn)行的過(guò)程,非常麻煩。而且接下來(lái), 關(guān)于事物如何關(guān)聯(lián)的整體視圖完全不見(jiàn)了。通過(guò)jPDL,這個(gè)整體視圖清晰可見(jiàn),而且熱部署就像做餅一樣容易。只需在一個(gè)圖形工具中重新配置圖中的變遷 (transition)并重新部署,而不是花上好幾個(gè)小時(shí)書(shū)寫(xiě)麻煩的企業(yè)部署描述符。

    另一方面,標(biāo)準(zhǔn)Java平臺(tái)完全不支持異步架構(gòu)。jPDL和標(biāo)準(zhǔn)Java平臺(tái)結(jié)合得非常緊密,它利用了來(lái)自過(guò)程虛擬機(jī)的工作執(zhí)行器(job executor)來(lái)提供異步延拓(continuation)和定時(shí)器。

    因此現(xiàn)在,由于有了基本的過(guò)程虛擬機(jī)基礎(chǔ)設(shè)施,一個(gè)單一jPDL過(guò)程就可捕獲人、Java代碼和其他事物的異步編制,并可使那個(gè)邏輯在標(biāo)準(zhǔn)和企業(yè)Java環(huán)境間可移植。

  3. 服務(wù)編制:對(duì)于服務(wù)編制來(lái)說(shuō),BPEL已經(jīng)廣泛被接受,并成為被支持的標(biāo)準(zhǔn)。它操作在企業(yè)服務(wù)總線(ESB)級(jí)別,因此它是一種集成技術(shù)。一個(gè)BPEL過(guò)程可以(過(guò)分簡(jiǎn)化的)被認(rèn)為是Web服務(wù)級(jí)別的腳本。WSDL服務(wù)可通過(guò)BPEL被描述成粗粒度的服務(wù)。

InfoQ:讀者可以在哪里找到關(guān)于PVM的更多信息?

Tom:首先,6月6號(hào)在都柏林會(huì)舉辦一個(gè)jBPM社區(qū)日的活動(dòng)。這是一次jBPM核心開(kāi)發(fā)人員、合作伙伴、客戶和其他只是想更多了解jBPM的人之間絕佳的溝通機(jī)會(huì)?;顒?dòng)是免費(fèi)的,在一個(gè)周五下午。欲知詳情,請(qǐng)查看jBPM社區(qū)日Wiki頁(yè)或發(fā)郵件至dublin@。

其次,對(duì)于那些缺乏耐心的讀者,這兒有一個(gè)已經(jīng)手把手地解釋如何使用它來(lái)構(gòu)建活動(dòng)和開(kāi)始運(yùn)行它的PVM手冊(cè)。

最后,這兒還有一篇InfoQ文章“過(guò)程組件模型:下一代工作流?”,它已于最近發(fā)布,給出了關(guān)于這一主題的更多背景資料。

查看英文原文:Tom Baeyens on the Process Virtual Machine
來(lái)自:http://www./cn/news/2008/05/processvirtualmachine

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多