Download presentation
Presentation is loading. Please wait.
Published byRebecca Newton Modified over 10 years ago
1
Indigo Jonathan Turnbull Nick Cartwright Ivan Konontsev Chris Bright
2
Today's Presentation Introduction What is Indigo? What is SO? Key Technical Issues Involved Programming example Why Indigo? Conclusion Questions?
3
Longhorn overview
4
Present communication solutions DCOM COM+.NET Remoting ASP.NET Web Services WSE Microsoft Message Queue
5
What is Indigo? Devised by Shewchuk and colleagues Successor and consolidation of current communication solutions A set of.Net technologies Unified programming model Cross platform support Moving from Object to Service Orientation
6
Indigos functions Reliable messaging Security Transactions Queuing Routing Management and discovery of other services
7
Services and Systems A Service is a program you interact with via exchanges of messages Services expose machine readable descriptions of these messages A System is a set of deployed services cooperating in a given task Services can be discovered via directory or lookup services
8
What is service orientation? Service-orientation describes a new method for architecting connected systems Service, Client, and Connected System Complements object oriented development No knowledge is needed of the underlying model of the program Advantage is that applications running on different platforms etc can communicate Better than J2EE because modifying one part of the system may break others
9
Services Architecture Foundation Applications & Application Structure Transport Connected Applications Management Business Processes … SecurityReliabilityTransactions Messaging XML Metadata HTTP and other wire protocols
10
4 Tenets of Indigo Service-orientation Fundamentals Boundaries are explicit Services are autonomous Services share schema and contract, not class
11
How does Indigo work? Architecture Channels Transport Channels (IPC, HTTP, TCP…) Transport Channels (IPC, HTTP, TCP…) Semantic Channels (Session, Reliable, Queue, …) Semantic Channels (Session, Reliable, Queue, …) Policy Engine Policy Engine Message Encoder Message Encoder Channel Security Channel Security Hosting Environments Instance Manager Context Manager Type Integration Service Methods Declarative Behaviors Transacted Methods ASP.NET.container.exe NT Service DllHost Messaging Services Queuing Routing Eventing Discovery Service Model Application
12
How does Indigo work? Reliable messaging – to ensure that messages are sent and received reliably (unlike TCP/IP) 3 Key Areas to Indigo: 1)Ports 2)Channels 3)Services
13
How does Indigo work? Port Service Channel Service Channel Dispatch Message Services Receive via HTTP
14
Example Code using System.ServiceModel; [Service] public class MyService { string Hello (string name) { return Hello + name; } [ServiceMethod] string ServiceHello (string name) { return Hello + name; } [ServiceMethod(OneWay=true)] void XMLMessage (Message msg) { new XPathDocument(msg.Body); }
15
Why Indigo? Heterogeneous interoperability Secure & Reliable With Visual Studio.NET you need 56,296 lines to have a secure, reliable and transacted service. With indigo you need approx 3. Build new systems faster – abstracts complexity for developers Transport modes etc are controlled by Indigo and not code. You specify what you want to do, not how to do it. Simplified integration with existing systems Compliant with industry standards e.g. SOAP Unified Programming Model
16
Why Indigo? Unified Programming Model Indigo ASMX.NET RemotingEnterprise Services Simple Config Interoperable Service-Oriented Attributes Transactions Components Broad Vision Extensibility Object-Oriented System Messaging Queuing Reliable Msg Durable Msg
17
Competition Distributed technologies such as: Javas Remote Method Invocation (RMI) Common Object Request Broker Architecture (CORBA) J2EE All have same problems of tight coupling
18
Migration to Indigo Comes with Longhorn Separate download for Windows XP, 2003 Exposed via.NET APIs
19
Conclusion Key component of Longhorn Indigo is the future of communication Consolidates and builds on existing technologies Built on the principle of passing messages Simplification by the Unified programming model
20
Selected References Brent E. Rector, Introducing the Next Generation of Microsoft Windows for Developer's: Code Name "Longhorn, ISBN: 0735620857 Indigo, http://msdn.microsoft.com/Longhorn/und erstanding/pillars/Indigo/, [accessed 24 th November 2004] Box D, Indigo: Services and the future of distributed applications, PDC Presentation 2003 Shewchuk J, Moving Forward: Web Services and Indigo, Microsoft Research Summit presentation 2001
21
Questions? Any questions? E-mail: Indigo@mywcs.co.uk
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.