Presentation is loading. Please wait.

Presentation is loading. Please wait.

Reliable Web Service Execution and Deployment in Dynamic Environments * Markus Keidl, Stefan Seltzsam, and Alfons Kemper Universität Passau 94030 Passau,

Similar presentations


Presentation on theme: "Reliable Web Service Execution and Deployment in Dynamic Environments * Markus Keidl, Stefan Seltzsam, and Alfons Kemper Universität Passau 94030 Passau,"— Presentation transcript:

1 Reliable Web Service Execution and Deployment in Dynamic Environments * Markus Keidl, Stefan Seltzsam, and Alfons Kemper Universität Passau 94030 Passau, Germany @db.fmi.uni-passau.de * This research is done in cooperation with the Advanced Infrastructure Program (AIP) group of SAP.

2 2 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Outline Architecture of ServiceGlobe Dynamic Service Selection Load Balancing and Service Replication Current Utilization of the Techniques Conclusion

3 3 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Outline Architecture of ServiceGlobe Dynamic Service Selection Load Balancing and Service Replication Current Utilization of the Techniques Conclusion

4 4 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments The ServiceGlobe System ServiceGlobe is an open, distributed, and extensible service platform developed for research purposes Fully implemented in Java 2 Based on standards like XML, SOAP, UDDI, WSDL,… Offers standard functionality of a service platform  secure communication  transaction system  security system Supports mobile code, i.e., services can be distributed and instantiated during runtime on demand  needed for automatic service replication

5 5 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Outline Architecture of ServiceGlobe Dynamic Service Selection Load Balancing and Service Replication Current Utilization of the Techniques Conclusion

6 6 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Motivation Dynamic Service Selection Call Web Services AB Service N Service B Service C Service A UDDI Repository tModel: T C Implement AB Execute

7 7 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Dynamic Service Selection DSS uses UDDI:  UDDI assigns Web services to tModels  tModel: semantic classification of functionality and formal description of interface DSS is ‘Calling a tModel' instead of the traditional ‘Calling a Web service‘ Web services are selected at runtime not at development time. Constraints can be used to influence Web service selection and invocation  Dynamic fusion of Web services  Reliable Web service execution

8 8 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Survey of Dynamic Service Selection Call tModel T Service N Service B Service C Service A UDDI Repository tModel: T C Implement AB Execute

9 9 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Classification of Constraints Metadata Constraints Location Constraints Mode Constraints Reply Constraints Result Constraints SelectionPropertyTimeoutFirst-N Preferences XXX Conditions Apply to Metadata (UDDI, …) Apply to SOAP Response

10 10 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Constraints Types of constraints:  Metadata Constraints  Location Constraints  Mode Constraints  Reply Constraints  Result Constraints Constraints are either Preferences or Conditions Constraints can be combined using logical operators

11 11 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Metadata Constraints XPath queries applied to service metadata Metadata: UDDI + additional metadata Examples: /businessEntity/name= "Company" /ServiceMetadata/CostsPerCall="0"

12 12 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Location Constraints Selection based on the location of services (stored in UDDI) Example: DE-BY-PAS 50km

13 13 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Mode Constraints Specify the number of Web services to invoke Modes: One, Some, All Example:

14 14 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Reply Constraints Property Constraints:  Query properties of replies (signature, age of data, encryption,…)  Insertion of properties by Web services, service platforms Selection Constraints: XPath queries applied to SOAP response Example: 2

15 15 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Result Constraints Timeout Constraints First-N Constraints Examples:

16 16 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Combination of Constraints Operators: AND, OR Example: /businessEntity/name="Company"

17 17 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Evaluation of Constraints Combine all constraints for a single tModel call conjunctively Transformation into DNF Resolve conflicts based on priorities Parallel evaluation of disjunctively combined AND terms

18 18 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Selection of Services Invocation of Services Processing of Replies Metadata Constraints Location Constraints Result ConstraintsReply ConstraintsMode Constraints Call tModel T Return Replies Service A Service B Service C UDDI Repository Service A Service B Service C tModel: T

19 19 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Outline Architecture of ServiceGlobe Dynamic Service Selection Load Balancing and Service Replication Current Utilization of the Techniques Conclusion

20 20 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Motivation A single service host is often not sufficient to provide low response times. Downtime can be costly. Integration of load balancing into services is error-prone and expensive.  Modular dispatcher service

21 21 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Advantages of a Modular Dispatcher Service Can act as proxy for arbitrary services Software-based layer-7 switch realized as a regular service  seamlessly integrated into the platform It is possible to enhance many existing services or develop new services with load balancing and high availability features  as long as Concurrency control mechanisms are used (e.g., DBMS as back-end) Additional feature: automatic service replication  Reliable Web service deployment

22 22 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Architecture of the Dispatcher Dispatcher Dispatch Module Advisor Modules Config- Modules RejectForwardBuffer Operation Mode Load Situation Operation Switch Module Load Situation Archive

23 23 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Advisor Modules Dispatcher Forward Operation Mode Load Situation A B DB1

24 24 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Survey of the Load Balancing System

25 25 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Automatic Service Replication Dispatcher Forward Operation Mode Load Situation A A A

26 26 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Automatic Service Replication in Complex Environments Dispatcher Forward Operation Mode Load Situation A A A A DB1DB2 Replication

27 27 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Availability using a Dispatcher Example: MTBF = 48h, MTTR = 12h, 8 hosts  1.5 minutes unavailable a year

28 28 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Outline Architecture of ServiceGlobe Dynamic Service Selection Load Balancing and Service Replication Current Utilization of the Techniques Conclusion

29 29 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Current Utilization of the Techniques The presented technologies are currently integrated into SAP NetWeaver platform to supplement its service virtualization capabilities. A demonstration was shown at the SAPphire 2003, SAP’s user conference.

30 30 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments SAP NetWeaver ©

31 31 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Application Service Manager Single Point of Control Server Landscape and Application Service Management Dynamic Demand driven Resource Assignment Change Management

32 32 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Outline Architecture of ServiceGlobe Dynamic Service Selection Load Balancing and Service Replication Current Utilization of the Techniques Conclusion

33 33 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Conclusion We presented techniques for reliable Web service execution and deployment  Dynamic Service Selection/Fusion and  Load Balancing and Service Replication in the Context of ServiceGlobe

34 34 ServiceGlobe - Reliable Web Service Execution and Deployment in Dynamic Environments Thank You for Your Attention! … any questions???


Download ppt "Reliable Web Service Execution and Deployment in Dynamic Environments * Markus Keidl, Stefan Seltzsam, and Alfons Kemper Universität Passau 94030 Passau,"

Similar presentations


Ads by Google