999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于BPEL和Drools的車間調度研究

2014-03-16 09:22:02聶亞飛姚錫凡周際鋒
電子設計工程 2014年9期
關鍵詞:服務

聶亞飛,姚錫凡,周際鋒

(華南理工大學 機械與汽車工程學院,廣東 廣州 510640)

業務流程是實現企業目標價值手段,幾乎所有企業的目標都是希望應用程序能夠提供業務流程全面的支持。企業是依靠業務流程執行業務操作,可以通過業務流程的自動化提高來業務效率。業務流程具有很強的動態性。企業必須敏捷的改進、修改、優化業務流程來滿足客戶日益增長的需求,從而提高整個企業的效率。業務流程的每一個改變和優化都要反映到為這些提供支持的程序上。企業的應用程序只有快速有效地適應商業的需求才能夠在市場上保持強有力的競爭力。

改進和優化應用程序是非常難的工作,而且相當費時。由于信息系統需要時間來實施、測試和部署,因此信息系統不能對業務流程的變化立即做出反應。信息系統適應業務流程變化所花費時間的長短有幾個影響因數,其中最重要的因數是應用程序的狀態。應用程序的每次修改都會減少其結構體系對于未來變化的魯棒性。因此,需要提供一種更為有效的業務流程來實現應用程序便捷的修改和優化[1-2]。

1 BPEL模型調用流程

BPEL是一種描述業務流程、計算機可執行的標準語言[3]。BPEL最重要的結構是Web服務的調用。Web服務技術提供了一種分布式環境,應用程序或組件以一種跨平臺、跨語言的方式進行無縫集成[4]。BPEL還支持長時間運行的進程和補償,允許撤消未成功完成的部分工作。BPEL的重要功能[5-6]包括:通過服務組合描述業務流程的邏輯;將較小的流程和服務集成為較大的業務流程;同步和異步處理服務調用的操作并且管理在隨后出現的回調;串行或并行調用服務操作;在出現故障時有選擇地完成補償活動;維持或中斷多線程長時間運行的事務活動;恢復中斷或失敗的活動,減少工作重復;傳入消息到適當的程序和活動中;關聯業務流程的要求;根據執行時間計劃活動并確定它們的執行順序;并行執行活動并定義并行流在同步條件下出現的方式;處理與消息和時間相關的事件。可執行業務流程是集成一系列現有存在的服務的過程,當描述BPEL的業務流程時,實際上是定義一個新的Web服務來集成現有的服務。新建的BPEL使用一組端口類型的接口來整合Web服務,通過這個接口提供像任何其他Web服務一樣的操作,要調用BPEL的業務流程,就必須要調用集成的Web服務[2]。BPEL通過兩種方式和其他服務相互作用,而這種相互的關系稱之為伙伴鏈接。BPEL流程調用Web服務的鏈接稱為調用伙伴鏈接,通常一個BPEL流程至少要有一個調用伙伴鏈接來調用Web服務。伙伴鏈接也可以是鏈接到客戶端并且能夠調用BPEL流程,這種稱為客戶端伙伴鏈接。

2 加工流程W eb Services開發

Drools是Java編寫的、開放源代碼的業務邏輯集成平臺[7]Drools有很多優點:1)易于理解:比Java或其他命令式的編程語言的代碼更簡單。2)提高了系統的維護性能:因為規則簡單易懂,就可以省出更多時間來發現和解決問題。3)能夠處理不斷變化的復雜問題:相比修改程序,更容易添加新的規則、修改或刪除現有規則。4)靈活性:它能夠更好地適應需求或對數據模型的變化。更改或重寫應用程序不會是一個簡單的任務,但是Drools形式化的規則使得更改或重寫應用程序是一件輕松的事情。5)合理性能:Rete算法的應用使得系統的性能理論上并不取決于規則的數量。由于規則引擎本質上是“if-then”的繼承,因此可以獨立應用許多優化規則[8-9]。采用基于Drools的車間調度優化結果來實現BPEL服務調用流程模型。圖1是基于Drools的車間調用優化得到的甘特圖和工序與機床對應圖。工件的每個工序按順序分別在不同的機床上加工。新建一個名稱為JobShopServiceProj的Web工程,建立Workpiece1Service.java,Workpiece2Service.java,Workpiece3Service.java,Workpiece4,Service.java4個類,分別是工件1、工件2、工件3和工件4的機床加工流程。

1)生成車間調度Web ServiceWSDL描述文件,分別右鍵Workpiece1Service.java,Workpiece1Service.java,Workpiece1Service.java,Workpiece1Service.java, 選 擇 Web Services->CreateWeb Service,按照界面選擇功能。然后點擊Finish就會生成java類對應的wsdl文件,并發布到tomcat中,同時會生成調用服務的客戶端,選擇start()->invoke,對該方法進行測試。

圖1 基于Drools車間調度的優化結果Fig.1 The optimization results based on Drools shop scheduling

2)Web Services服務部署。為了能夠讓其他服務去調用Workpiece1Service,必須先將其部署在服務器上。右鍵JobShopbServiceProj工程,Export->Web->WAR file, 將War包導出至 Tomcat的 webapps目錄下,即完成部署。

3 基于BPEL車間調度的開發部署

1)創建BPEL工程

服務部署完成后,下一步就是BPEL的開發。新建一個名為JobShopBPEL的BPEL工程。右鍵JobShopBPEL,新建一個名為JobShopProcess的業務流程,名字空間可設為:http://eclipse.org/bpel/sample,選擇 Synchronous BPEL Process,單擊Finish完成BPEL流程創建。

2)導入工件加工服務的WSDL文件

將 Workpiece1Service.wsdl、Workpiece2Service.wsdl,Workpiece3 Service.wsdlWorkpiece4Service.wsdl4個wsdl文件復制到BPLE工程目錄下。3)設置伙伴鏈接

BPEL把所有服務都稱之為伙伴鏈接。BPEL伙伴鏈接是和其他伙伴發生對話時的接收器[10]。BPEL創建時自動生成的WSDL(JobShopProcess.bpel)本身也是一個伙伴鏈接。對于流程中要用到的加工服務,同樣要生成對應的伙伴鏈接。打開JobShopProcess.bpel,在右上角的 Partner Links中,增加 4個鏈接,分別是 Workpiece1PL、Workpiece2PL、Workpiece4PL和Workpiece4PL。

設置伙伴鏈接,右擊Workpiece1PL,選擇屬性打開屬性視圖,在屬性視圖中Details頁面中點Browser,打開對話框。點Add WSDL把4個WSDL即Workpiece1Service.wsdl,Workpiece2Service.wsdl,Workpiece3Service.wsdl,Workpiece4Se rvice.wsdl添加進來。

點擊Ok后,彈出伙伴鏈接類型定義,把名字取為Workpiece1PLPLT,點 Next。 要求輸入 Role Name,這里輸入“Workpiece1Provider”,點Finish完成。同時在屬性視圖中把ParterRole選為Workpiece1Provider。以同樣的方式完成Workpi-ece2PL、Workpiece3PL和Workpiece4PL的設置。

4)修改JobShopProcessArtifacts.wsdl的輸入輸出

因為默認的輸入輸出不符合項目的要求,右鍵JobShopProcessArtifacts.w sdl文件,用open with WSDL Editor打開該文件,轉到設計視圖里。點擊input后邊對應的箭頭,打開一個新的Editor對輸入消息進行配置。選擇type添加元素,并設置元素的類型,Output設置類似。

5)創建調用服務時需要的變量和配置變量

圖2 BPEL流程設計Fig.2 The BPEL process design

每次invoke一個服務時都要有對應的變量,加入變量。以Workpiece1為例,點擊Workpiece1Request變量,進入屬性視圖中Details界面,點擊右上角的Browse按鈕,打開類型選擇對話框,選擇對應的Request服務定義。同理,其他7個變量的配置方法一樣。

4 基于BPEL車間調度的實現

BPEL流程設計如圖2所示。

1)If條件語句配置

選擇If,在屬性視圖中點開Details頁,輸入條件語句:$input.payload/tns:type=`Workpiece1',同樣方式配置Else If條件語句。

Invoke的作用是調用伙伴鏈接對應接口下的對應操作,還需要指定輸入輸出變量。在invoke的屬性視圖的Details頁面中進行配置。2)BPEL流程發布:

BPEL流程最終的目的是發布成一個Web Service,通過調用服務的功能來完成任務。選擇 File->NewOther->BPEL2.0->BPEL Deployment Descriptor, 點擊 Finish即會生deploy.xml文件。

3)BPEL運行與測試

①創建ODE服務器

從 Eclipse選擇 File->New->Other選項, 選擇 Server,再選擇Apache Ode v1.x Server,點擊Finish即可創建Ode服務器。

右鍵 Ode v1.x Server, 選擇 “Add and Remove…”,將JobShopBPEL添加到Ode中。②測試服務調用

以Workpiece1為例,右鍵 Workpiece1Service.wsdl,選擇Web Services->Testwith web service explorer,在彈出的頁面中,點擊start()得到運行結果。使用同樣的方法可以測試Workpiece2、Workpiece3和Workpiece4的服務調用。BPEL通過Ode服務器測試說明了BPEL實現了服務的發布、調用和交互。

5 結論

本研究以BPEL為基礎,設計了一個機械加工的實例模型,將經過Drools優化的車間調度結果通過BPEL實現多服務交互規劃。詳細闡述了BPEL實現多服務建立、發布、交互和測試的全過程,結果表明BPEL能夠實現多服務的調用和交互。

[1]Committee.WS-BPEL.[EB/OL].(2007)http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.html.

[2]Matjaz B J,Benny M,Poomachandra S.Business Process Execution Language for Web Services Second Edition[M].UK:Packt Publishing Ltd.,2006.

[3]王雷,徐立臻.BPEL建模工具中業務流程模型到BPEL程序的換算法[J].計算機與數字工程,2009,239(9):43-46.WANG Lei,XU Li-zhen.BPEL business process modeling tools in themodel to the BPEL process of conversionmethod[J].Computer and Digital Engineering,2009,239(9):43-46.

[4]崔福東,喬彥友,常原飛.基于BPEL的Web服務快速組合框架[J]計算機工程,2010,36(7): 262-264.CUI Fu-dong,QIAO Yan-you,CHANG Yuan-fei.The Web services quick combination framework based on BPEL[J].Computer Engineering,2010,36(7): 262-264.

[5]Stany B,Jeremy B,Michael C.BPEL Cookbook [M].UK:Packt Publishing Ltd.,2006.

[6]Yuli V.SOA and WS-BPEL[M].UK:Packt Publishing Ltd.,2007.

猜你喜歡
服務
自助取卡服務
服務在身邊 健康每一天
今日農業(2019年14期)2019-09-18 01:21:54
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年11期)2019-08-13 00:49:08
服務在身邊 健康每一天
今日農業(2019年13期)2019-08-12 07:59:04
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年15期)2019-01-03 12:11:33
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
高等教育為誰服務:演變與啟示
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
主站蜘蛛池模板: 国产福利大秀91| 99热这里只有免费国产精品| 伊人无码视屏| 老司机午夜精品网站在线观看 | 久草视频中文| 久久99精品久久久久纯品| 国产香蕉在线| 中文成人在线| 亚洲美女操| 欧美啪啪网| 99精品免费欧美成人小视频| 99久久国产综合精品女同| 亚洲欧美另类日本| 成人福利在线视频免费观看| 欧美一级夜夜爽| 日本午夜影院| 伊人色天堂| 国产免费黄| 精品国产免费观看一区| 依依成人精品无v国产| 成人欧美日韩| 国产高潮流白浆视频| 又黄又湿又爽的视频| 日本午夜精品一本在线观看 | 欧美精品1区2区| 夜夜操狠狠操| 国产一区自拍视频| 国产精品综合久久久| 91免费国产高清观看| 国产精品亚洲一区二区三区在线观看| 欧美h在线观看| 在线视频亚洲欧美| 日本欧美成人免费| 色综合久久88| 亚洲欧美日韩另类| 国产激情在线视频| 狠狠色丁香婷婷综合| 国产男女免费视频| 国产欧美在线观看视频| 欧美日韩动态图| 亚洲欧洲日韩久久狠狠爱| 日韩高清中文字幕| 看你懂的巨臀中文字幕一区二区| 黄色a一级视频| 国产成人亚洲综合a∨婷婷| 国产成人无码Av在线播放无广告| 特黄日韩免费一区二区三区| 国产人人乐人人爱| 91蝌蚪视频在线观看| 在线观看免费国产| 色悠久久久| 99视频在线免费观看| 亚洲av色吊丝无码| 亚洲系列中文字幕一区二区| 99精品视频九九精品| 二级特黄绝大片免费视频大片| 91精品久久久无码中文字幕vr| 91精品网站| 亚洲国产成人精品一二区| 国产一区二区精品福利 | 亚洲精品成人福利在线电影| 国产一区二区福利| 国产靠逼视频| 97超爽成人免费视频在线播放| 在线观看亚洲人成网站| 在线播放真实国产乱子伦| 久久天天躁夜夜躁狠狠| 国产传媒一区二区三区四区五区| 中国国产一级毛片| 国产极品嫩模在线观看91| 精品久久国产综合精麻豆| 午夜在线不卡| 国产成人福利在线| 国产人成午夜免费看| 国产精品嫩草影院av| 97精品国产高清久久久久蜜芽| 一级毛片在线免费看| 久久免费成人| 最新精品国偷自产在线| 亚洲日本一本dvd高清| 在线观看国产精美视频| 四虎影视永久在线精品|