Indigo is suited for building Service Oriented (SO) systems. Service Orientation helps architects and developers design and build connected systems. Service Orientation complements Object Orientation and helps express services in a platform and implementation independent manner.
Services are programs that are communicated with via message exchange. Services are autonomous, which means they exist and run on their own. Functionality exposed by these services are described using standards-based schema and contracts. Many applications can call a service, and the service won't crash if one of the consuming applications breaks. A system is a collection of deployed services cooperating in a given task. Systems are built to adapt to change.
Indigo is implemented in .NET; therefore, services are created with any CLR-compliant language. Indigo services are exposed on the wire via standards based technologies (such as XML, XSD, SOAP, WSDL, and other Web services specifications).
Indigo services are bound to the network through one or more channels attached to a port. Each channel is built dynamically at connection time to support the communications requirements negotiated between caller and service. This way, an Indigo service can talk to both a local Indigo service via IPC and a remote client app via HTTP at the same time.
Earlier .NET Framework distributed technologies such as ASP.NET Web services, Enterprise Services, .NET Remoting, COM+/MSMQ can be used from within Indigo applications. Indigo can also interoperate on the wire with ASP.NET Web services, Enterprise Services, COM+/MSMQ, and any applications built on infrastructure that conforms to Web services standards.
Microsoft will provide mechanisms for migrating applications that use most existing frameworks to services.
Microsoft asserts that Indigo will also be instrumental in facilitating true peer-to-peer communication, where PC users can "exchange data, share resources, locate other users, communicate, and collaborate directly in real time" without the need for Internet servers.
Stay up to date on the latest developments in Internet terminology with a free newsletter from Webopedia. Join to subscribe now.
From A3 to ZZZ we list 1,559 text message and online chat abbreviations to help you translate and understand today's texting lingo. Includes Top... Read More »Huge List of Computer Certifications
Have you heard about a computer certification program but can't figure out if it's right for you? Use this handy list to help you decide. Read More »
Computer architecture provides an introduction to system design basics for most computer science students. Read More »Network Fundamentals Study Guide
Networking fundamentals teaches the building blocks of modern network design. Learn different types of networks, concepts, architecture and... Read More »The Five Generations of Computers
Learn about each of the five generations of computers and major technology developments that have led to the computing devices that we use... Read More »