Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dynamic Web Service Selection for Workflow Optimisation Lican Huang, David W. Walker, Yan Huang, Omer F. Rana Presented by Lican Huang School of Computer.

Similar presentations


Presentation on theme: "Dynamic Web Service Selection for Workflow Optimisation Lican Huang, David W. Walker, Yan Huang, Omer F. Rana Presented by Lican Huang School of Computer."— Presentation transcript:

1 Dynamic Web Service Selection for Workflow Optimisation Lican Huang, David W. Walker, Yan Huang, Omer F. Rana Presented by Lican Huang School of Computer Science, Cardiff University AHM2005 21 Sept, 2005

2 Outline Introduction Framework Implementation Conclusion & Future work AHM2005 21 Sept, 2005

3 WOSE Project (Workflow Optimisation Services for e-Science Applications) Funded by the EPSRC Cardiff University, Imperial College and Daresbury Laboratory Primary investigator: David.W.Walker. Introduction-- background AHM2005 21 Sept, 2005

4 Introduction-- motivation (1)Multiple copies of a service with different performance or other user defined set of criteria; and these services cannot be selected at design time because their performance is not known at that time. (2)workflow optimisation by selecting optimal web services at run-time and integrating dynamic selection of web service into workflow (2) fault-tolerance by trying a set of candidates of services (3) Logging data for analysis of workflow results AHM2005 21 Sept, 2005

5 Introduction-- Issues of concern (1) mechanisms to discover, select and invoke Web services dynamically (2) mechanisms to optimize workflow by integrating the selection of service into workflow AHM2005 21 Sept, 2005

6 Framework -- Architecture of dynamic Web services selection for workflow optimisation AHM2005 21 Sept, 2005 Discovery Service History Database Registry (UDDI) Monitoring Tool Optimization Service Proxy Service Monitor service

7 Framework -- Message sequence of workflow incorporating dynamic Web Service selection AHM2005 21 Sept, 2005 Optimisation Service 5. List of services 6. Selected service Workflow script Workflow deploy XSLT converter 2. Dynamic invocation through proxy 9. Result through proxy 3. Service query 4. List of services 7. Invoke service 8. Result Discovery Service Proxy Service 1. Request 2A. Direct invocation 3A. Direct result 10. Result Web service Workflow engine WOSE client

8 Framework– proxy as adaptor of dynamic selected service AHM2005 21 Sept, 2005 Service A Proxy service Service C Service B1 Service B2 Service B3 Service B4 Service B5

9 Framework– proxy service Proxy service Discovery service Optimisation service monitor service Dynamic invocation service AHM2005 21 Sept, 2005

10 Framework– proxy service interface AHM2005 21 Sept, 2005

11 Framework– fault-tolerance and logging AHM2005 21 Sept, 2005 Public String ServiceProxy(…){ Set values of uddiregistries; Servicelist = discoveryService(… ); While (true) { Service= Optimizationservice(Servicelist); If result =dynamicInvoke(service) fails{ Updates fail-timestamp in Database; Logging; } else { Update average_response_time in database; Logging; Stop; } } Return result; }

12 Framework– discovery service interface AHM2005 21 Sept, 2005 Function: From UDDI registries to get list of semantic equal services

13 Framework– discovery methods Public string ServiceDiscovery (String servicemeta, querymethod, String uddiregistries){ Switch querymethod Case byNAME Look up the matched service name in uddiregistry(ies) Case byMETA Look up the matched metadata in the description entity of businessService entity of uddiregistry(ies). Case byONTOLOGY Look up the URL of semantic definition XML File and matchmake the semantically equivalent service. } AHM2005 21 Sept, 2005

14 Framework– discovery by name Typically used where services are registered by the same business entity but with different access points. No extensions are needed to the information contained in the UDDI registry AHM2005 21 Sept, 2005

15 Framework– discovery by metadata UDDI extensions The byMETA method would typically be used where all service providers conform to a particular metadata specification, and have the ability to publish their own services in the UDDI registries. AHM200521 Sept, 2005

16 Framework– discovery by metadata UDDI extensions blastallservice businessServicename description description description string description … businessService AHM200521 Sept, 2005

17 Framework– discovery by ontology The byONTOLOGY method is used to query all semantically equivalent services by semantic matchmaking. This would typically be used where there are many service providers who publish the services according to the schema encoded in a service ontology. The service providers are loosely connected or without any relationship. AHM200521 Sept, 2005

18 Framework– discovery by ontology UDDI extensions blastallservice businessServicename description http://131.251.47.147:8080/axis/blastall.xml description … businessService AHM200521 Sept, 2005

19 Framework– optimisation service interface AHM200521 Sept, 2005 Function: selecting the optimal service from the list of semantically equivalent services based on the criteria for optimization.

20 Framework– optimisation service uddi extensions AHM200521 Sept, 2005

21 Framework– monitor service interface - - AHM2005 21 Sept, 2005 Function: Get CPU load and CPU speed of the computer

22 Framework– optimisation criteria - performance factor= (1- CPU load)*CPU_speed/1000 AHM2005 21 Sept, 2005

23 Framework– optimisation service -Performance { -While ( service in servicelist) -{ - performance_factor= monitorservice(); if (performance_factor_max< performance_factor) performance_factor_max = performance_factor; } return service location with max performance_factor } AHM2005 21 Sept, 2005

24 Framework– optimisation modes Public string ServiceOptimization (String serviceURL, String optimizationMode, String optimizationMETA) { Swith optimizationMode Case byPERFORMANCE Look up real-time computer load,etc. and history data. Case byTRUST Look up the trustworthiness of the services. Case byPersonalization Look up the user defined set of criteria } AHM2005 21 Sept, 2005

25 Implementation– environment Operation systems: linux, windows Web service container: Tomcat + AXIS Workflow engine: ActiveBEPL Workflow languages: SCUFL, BPEL4WS Database: mySQL UDDI: JUDDI at Welsh e-Science Centre Machines: ygrid01, ygird01, ygrid03,ygrid04,ygrid05,ygrid06,(linux) desktop linux, laptop windows AHM2005 21 Sept, 2005

26 Implementation – example AHM200521 Sept, 2005

27 Implementation– request AHM2005 21 Sept, 2005

28 Implementation– result AHM2005 21 Sept, 2005

29 Implementation– monitor logging data CCGrid2005 Wip section 12 May, 2005

30 Implementation– proxy service logging data CCGrid2005 Wip section 12 May, 2005

31 Conclusion AHM2005 21 Sept, 2005 1.Present framework for dynamic web service selection within a workflow session 2.Proxy service as adaptor of dynamic selected service 3.Strategy for discovering service by UDDI extensions. 4. Performance service selects optimal service among services by getting real-time data with monitoring service 5. Implementation of the framework

32 Future work AHM2005 21 Sept, 2005 1. Optimisation model 2. Discovery service by ontology method

33 AHM2005 21 Sept, 2005 Thanks Questions?


Download ppt "Dynamic Web Service Selection for Workflow Optimisation Lican Huang, David W. Walker, Yan Huang, Omer F. Rana Presented by Lican Huang School of Computer."

Similar presentations


Ads by Google