Download presentation
Presentation is loading. Please wait.
1
Dynamic Service Discovery Workshop on Web of Services for Enterprise Computing Kinga Dziembowski 02.27.2007
2
2 Bio and company background The problem of Services Discovery in a commercial environment The problem of Services Discovery for US military environment –What needs to be discovered? An approach – Dynamic Discovery – Service Type and Service Instance – Dynamic Discovery pattern architectures Interoperability problem – should Dynamic Service Discovery be an infrastructure resident service? Summary Presentation Agenda
3
3 Bluestone - Application Server Company HP – HP Web Service Platform (AS, SOAP Server, UDDI Server) SOAP server –Apache Cocoon contributor WSMF – Web Services Management Framework –Spec, reference implementation –End-to-end integration of TIBCO environment with OpenView using WSMF and then WSDM WSDM – OASIS standard –Spec reference implementation –Apache Committer - muse, wsrf, pubsub Gestalt – ARCES – Applied Research for Computing Enterprise Services Kinga Dziembowski edziembowski@gestalt-llc.com edziembowski@gestalt-llc.com
4
4 Gestalt-LLC - http://www.gestalt-llc.com/ http://www.gestalt-llc.com/ Is an international professional services firm Provides business consulting and technology solutions to the Defense and Energy markets Develops practical yet innovative solutions that drive competitive advantage in complex decision environments ARCES project: – is sponsored by Electronic System Center ESC – is a research on SOA in DoD Net-Centric vision (NCES,GIG) – uses Modeling techniques – CPN, Extend, Opnet Gestalt-LLC Overview
5
5 Service Discovery in the dynamic and transient nature of a highly distributed and mobile enterprise, such as the US military, requires a much more dynamic concept of Service Discovery than what is currently handled by most commercial Service-Oriented Architecture implementations. My position
6
6 Discovery (observation), observing or finding something unknown to one's culture [Wikipedia] Discovery problem
7
7 Service Discovery – dry cleaner story
8
8
9
9 Figure out if the functionality (Service) s/he needs exists. Find enough information to “interface” with the Service Use this same “interface” all the time Be able to access the Service at any time Be able to access the Service from any place Be notified of any change which violates basic needs Consumer needs to find the Service satisfying his/her requirements - Service Discovery process will help What are the consumer needs?
10
10 Discovery in a Stable Environment The problem of Services Discovery in a commercial environment – The infrastructure in which the service customers and providers operate is stable. – Service Discovery is concerned about Service Type Service End point URL
11
11 Service Consumer Service Provider Service Registry Publish Bind/Invoke Discover Assumptions: – Stable infrastructure – Services deployed stay deployed – End point URLs once established stay operational – Non operational services consist of business lost for enterprise – Consumer operates in a static environment Commercial world comprises the “core” environment. Here, the Service Discovery triangle paradigm works quite well. How does this story translates to the SOA ?
12
12 Dynamic Environment The problem of Services Discovery for US military environment –Commercial world comprises the “core” environment in which the well known Service Discovery triangle paradigm works quite well –In the highly distributed and mobile world of the military, the space in which Web Services and web technologies operates is much more complex
13
13 Core –The “core” is static, stable, has known behaviors, is established, and is always connected. Services are assumed to be operational 24x7. Edge –The “edge” is dynamic, transient, and sometimes disconnected; you cannot assume that the Service is available at any point of time. Consumer environment changes – he needs to adapt to the environment Provider environment changes – he needs to adapt to the environment In the highly distributed and mobile world of the military, the space in which web technologies operates is much more complex Dynamic nature of consumer and provider
14
14 Even with my dry cleaner story I could not satisfy my Discovery need using static registry – telephone book At the first Web Service maturity level, the simplistic assumptions that the Web Services operate in a static world were OK It is time to move to the next maturity level and address dynamic nature of the Web Services Instances The canonical Service Discovery paradigm is not enough for dynamic environments Additional runtime Dynamic Service Discovery is needed – Service Instances are of main concern – Service Instance presence and availability are needed Service Instance, presence and availability is needed for Dynamic Service Discovery Something is missing
15
15 1.Mobile Service Clients - Such clients plug into existing systems and need to discover where the needed Services Providers are in the current environment. 2.Mobile Services Providers – The Service Instance is moving from point to point on the network. What is important for this use case is the ability for the client to invoke a specific Service Instance – the state associated with the Service Instance matters. 3.Changing Service Instance population – (transient services). - The goal for Service Discovery is to find what Service Instances are currently available, it is not important to find a specific Instance, any Instance of a particular service type will satisfy the consumer need. 4.Instance federation – In this use case multiple Services Instances spread resource responsibilities. The population of the Instances is static or slowly changing (“the core”). Service Discovery is concerned with finding the Service Instance with the appropriate context. Each Instance context changes. Dynamic Discovery Pattern Use Cases
16
16 Discovery Use Case - Mobile Service Client Service Provider Service Provider Service Provider
17
17 Discovery Use Case - Mobile Service Providers
18
18 Dynamic Discovery Pattern Initial Discovery Pattern –Repository for Service Type and Service Instance metadata –Discovery Engine that fronts metadata repository –Services publish Service Instance metadata to repository; update as metadata changes –Clients query discovery engine –Extension to existing design-time discovery mechanisms
19
19 Dynamic Discovery Pattern Service Consumer Service Provider Service Type Registry/Metadata Publish Service Type Discover Service Type Service Instance Registry/Metadata Discovery Publish Service Instance Metadata Discover Service Type Discover Service Instance Bind/Invoke
20
20 Service Type – Established at design time – Can be uniquely identified – Consists of Interface definition Semantic information Metadata definition (context) Static part – values established at design time and never changes Para-dynamic part – values established post design time Dynamic part - Instance values established at run time 1………. 2.………. 3………. 4.………. 5………. 6.………. What needs to be discovered?
21
21 Service Instance – Running Instance of Service defined by Service Type – Implementation of semantic and syntactic contract defined by Service Type – Establishes dynamic metadata values defined by Service Type – What consumer actually interacts with – Can be uniquely identified – Updates its context document when the dynamic metadata values changes What needs to be discovered? Service Instance is independently managed entity, can appear and disappear, has its own dynamic metadata values
22
22 Interoperability problem What are the minimal responsibilities of Service Instance to participate in Dynamic Service Discovery? Should we define Web Service as implementing several Interfaces –Business interface (the functionality which defines the Service) –Discoverable interface (set of operations, properties, capabilities needed to Discover service in interoperable way) –Management Interface (set of operations, properties, capabilities needed to Manage service in interoperable way) Should we query Web Service to learn what are its capabilities and use this dynamic knowledge to interact with it appropriately? Should Dynamic Service Discovery be an infrastructure resident service – ESB ?
23
23 Summary Dynamic and transient nature of a highly distributed and mobile enterprise, such as the US military, requires run time Service Instances discovery Discoverable Services Service Type describes the Service Service Instance is implementation of the Service Type Service Instance has dynamic context Metadata context needs to be part of the contract - Service Type Definition (wsdl?) Service Instance Presence and Availability
24
24 Conclusions Dynamic Service Discovery problem needs to be solved in global, systematic way Develop supporting standards, architectures, reference implementations Provide design patterns, recommendations and best practices If this problem is not solved at the architecture and standards level, the main benefit of SOA – INTEROPERABILIRY- will be compromised or lost
25
25 Info Kinga Dziembowski mailto:edziembowski@gestalt-llc.commailto:edziembowski@gestalt-llc.com Gestalt-LLC - http://www.gestalt-llc.com/http://www.gestalt-llc.com/ Terms: NCES – Net Centric Enterprise Services GIG – Global Information Grid DISA – Defense Information Systems Agency
26
26 Questions? Feedback
27
27 Parking
28
28 The 5 W’s in SOA world Who does discovery? Machine vs. Human What is being discovered? Service Definitions Service Instances Service Endpoints Where is the searching done - what is the scope of the search? Global/Public Enterprise COI Application Why is discovery being performed? What problems does discovery solve? When is discovery performed? Design-time vs. Run-time
29
29 Consumers and Providers P1 P5 P4 P3 P11 P9 P10 P2 C4 C5 C22 C1 C2
30
30 Global Discovery Engine P1 P5 P4 P3 P11 P9 P10 P2 C4 C5 C22 C1 C2 R
31
31 Grouping of services and consumers P1 P5 P4 P3 P11 P9 P10 P2 C4 C5 C22 C1 C2 R R R RR COI (Communities Of Interest )
32
R Discovery Engines organizations Q u er y peer-to-peer federated hierarchical
33
R R R R R Peer-to-peer
34
R R R R R R Query Federated
35
R RR R R RR R Hierarchical
36
R R R P1 P3 P4 P2 C1 C3 C2 P5 How does it work?
37
37 Implementation Demo
38
38 Summary Dynamic and transient nature of a highly distributed and mobile enterprise, such as the US military, requires run time Service Instances discovery Service Type describes the Service Service Instance is implementation of the Service Type Service Instance has dynamic context Meta Data context needs to be part of the contract - Service Type Definition (wsdl?) Service Instance context changes over time – Dynamic Service Discovery needs to be notified Dynamic Service Discovery is similar to query search – as a result we get hitlist of Service Instances context documents Service consumer select the document from the hitlist and invoke the Service Business interface
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.