Download presentation
Presentation is loading. Please wait.
Published bySibyl Anthony Modified over 8 years ago
1
Distributed Automatic Service Composition in Large-Scale Systems Songlin Hu*, Vinod Muthusamy +, Guoli Li +, Hans-Arno Jacobsen + * Chinese Academy of Sciences, Beijing + University of Toronto July 4, 2008 2nd International Conference on Distributed Event-Based Systems (DEBS 2008) MIDDLEWARE SYSTEMS RESEARCH GROUP
2
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 2 Service-oriented computing Register services Find services Compose services Service composition becomes time consuming Explosion of services Automatic service composition
3
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 3 Automatic service composition Current approaches are centralizedDecentralized architecture is more appropriate Services are already distributed Improved scalability Load balance requests No single-point of failure Exploit similarity to publish/subscribe a b c Service 1 z x y Service 2 Service composition: Are services interoperable? Publish/subscribe: Does data match query? Data Query
4
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 4 Agenda Background Service composition terminology Publish/subscribe semantics Automatic service composition Mapping to publish/subscribe domain Distributed search algorithm Evaluation Sensitivity of distributed algorithm to various factors
5
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 5 Service relationships postscriptprint_status SimplePrinter postscript print_status duplex_option DuplexPrinter html postscript pdf HTMLConv htmlprint_statusduplex_option Request3 R out R in Successor relationship Compatibility relationship Invocation defined by request and expected response parameters Service defined by input/output parameters Parameters are domain specific Web Service: message schema RPC: argument type
6
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 6 Composite process Construct compatibility graph Find subset All inputs satisfied by outputs of a set of services/requests DuplexPrinter HTMLConv Request3 R out R in DuplexPrinter HTMLConv PDFConv Request3 R out R in SimplePrinter DuplexPrinter HTMLConv WordConv PDFConv Request3 R out R in Compatibility graph DAGs that are possible processes
7
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 7 Content-based pub/sub semantics Subscriber Publisher Subscription: item = computer brand = ibm price < 1500 Advertisement: item = computer brand = ibm price < 2000 Publication: item = computer brand = ibm price = 1400 Publication: item = computer price = 1000 Intersection Subscription: item = computer brand = dell price < 1500 No Intersection
8
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 8
9
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 9 Architecture Distributed Exploit pub/sub matching to assist process search Service agent registers services and participates in search algorithm Is both a publisher and subscriber Search Request Search Result Service Agent Request Agent Pub/Sub Broker Network
10
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 10 Mapping to pub/sub domain postscriptprint_status SimplePrinter postscript print_status duplex_option DuplexPrinter html postscript pdf HTMLConv htmlprint_statusduplex_option Request3 R out R in Advertisement: postscript = * pdf = * Subscription: html = * Advertisement: print_status > 0 Subscription: postscript = * Advertisement: print_status > 0 Subscription: postscript = * Subscription: duplex_option > 0 Advertisement: html = * duplex_option = 0 Subscription: print_status > 0 Pub/sub intersection reveals compatibility relationships
11
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 11 Process search R R 1 3 5 4 Service Agent Request Agent Pub/Sub Broker Network 2 2 R 1 3 4 R 5 R 1 R 2 R 5 R 23 R 14 R 234 2 R 1 3 4 2 R 1 3 4 R Compatibility graph 2. Service agents with compatible services receive pub Append themselves to DAG if they succeed Send publication 1. Request agent issues publication Include request as a DAG 3. Terminate when request agent receives a publication DAG represents a potential process
12
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 12 Evaluation
13
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 13 Setup Algorithms implemented in Java Using Padres distributed content-based pub/sub system http://padres.msrg.utoronto.ca Data centre environment 14 machines with 1.86 GHz CPU and 4 GB RAM Deployments Centralized Distributed Hybrid: Centralized broker, distributed agents Metrics Search latency Search message overhead DistributedCentralized Hybrid Broker topology
14
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 14 Search frequency Tradeoff between centralized and distributed Centralized suffers when frequency exceeds latency Distributed suffers when frequency exceeds latency number of machines Near optimal parallelism No difference in per search message overhead Latency variations are due to queuing
15
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 15 Results per search Linear relationship Distributed suffers higher message overhead but enjoys shorter latencies Overhead is distributed Little benefit with hybrid Pub/sub matching dominates
16
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 16 Impact of pub/sub matching “Unused” registered services impact search latency Due to slower pub/sub matching What other matching optimizations are appropriate from these workloads? Matching optimizations such as covering help
17
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 17 Process length Without concurrent requests Distributed performs worse Difference between distributed and centralized widens With concurrent requests Centralized is extremely overloaded Distributed is relatively stable Latency increases are largely due to pub/sub matching Similar latency and message trends Minimal impact of distributed agents (hybrid)
18
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 18 Conclusions Explosion of services requires tools to simplify service composition Data E-R relationships SQL Web pages hyperlink relationships Google Services interoperability relationships process search Novel application of pub/sub to realize distributed automatic service composition Distributed algorithm achieves near optimal parallelization of concurrent search requests Exciting new opportunities Autonomic service composition Continuous search, result reuse, distributed administration Pub/sub New application scenario, workloads, optimization points
19
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 19 Research synergies Automatic Service Composition Publish/Subscribe Process constraints Path length. Number of services. Service properties QoS, price, security, etc. Semantic, fuzzy compatibility. Continuous search Notify when a new service results in a valid process. Reverse search Find processes that can compose a given service. Discover business opportunities of a service provider. Reuse search results Register found processes as another service. Service agent will append composite process to DAG.
20
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 20 Distributed Automatic Service Composition in Large-Scale Systems http:// padres.msrg.toronto.edu Q&A Thank you
21
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 21 Extra slides
22
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 22 Service relationships postscriptprint_status SimplePrinter postscript print_status duplex_option DuplexPrinter html postscript pdf HTMLConv pdfpostscript PDFConv htmlprint_statusduplex_option Request3 R out R in htmlprint_status Request2 R out R in Successor relationship Compatibility relationship Invocation defined by request and expected response parameters Service defined by input/output parameters Parameters are domain specific Web Service: message schema RPC: argument type
23
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 23 Service agent components Pub/sub client Service registry Successor matching algorithm Publication cache Store and register services Store services that are compatible with but do no precede Detect predecessor sets. Supports AND-split and AND-join Acts as both publisher and subscriber
24
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 24 Issues Possible that no composition of services satisfy invocation parameters Difficult to detect this in a distributed algorithm Simple solution: Expire search More robust but expensive solutions possible Cycles are possible in compatibility relations Detect this during successor matching Caveat: Resulting processes will not have loops DeadlocksLivelocks W1 R in R out W3 W2 W6 W4 W7 W5 W8 R in R out W4 W1 W3 W2
25
MIDDLEWARE SYSTEMS RESEARCH GROUP Jul. 4, 2008 (DEBS ’08) Automatic Service Composition 25 Service deployment In-order: adjacent services deployed to adjacent brokers Alternating: adjacent services alternately deployed to brokers 1 and 13 Poor deployment affects even sequential requests But parallel requests are more sensitive to a poor deployment
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.