services oriented infrastructure in a web2.0 world

31
Services Oriented Infrastructure in a Web2.0 World Tom Maguire EMC Corporation

Upload: clive-bearman

Post on 01-Nov-2014

4.365 views

Category:

Business


0 download

DESCRIPTION

Tom Maguire discusses applying SOA Web 2.0 technologies, and open standards to the problems faced by IT in an ever changing world. This session was recorded at EMC World 2007 in Orlando Florida

TRANSCRIPT

Page 1: Services Oriented Infrastructure in a Web2.0 World

1© 2007 EMC Corporation. All rights reserved.

Services Oriented Infrastructure in a Web2.0 World

Tom Maguire

EMC Corporation

Page 2: Services Oriented Infrastructure in a Web2.0 World

2© 2007 EMC Corporation. All rights reserved.

Abstract

The confluence of several mature architectural paradigms with new user-centric paradigms will drive the next generation of IT.

Next generation IT will be based on the combination of model-driven architecture and service-oriented architecture applied to applications, information delivery, and IT resources alike.

The agility gained in IT infrastructure coupled with highly configurable, lightweight, 'last mile' visualization technologies will dramatically increase the relevance and reactivity of IT to the business.

Page 3: Services Oriented Infrastructure in a Web2.0 World

3© 2007 EMC Corporation. All rights reserved.

What You Should Gain

� Attendees will leave with an understanding of the benefits of SOA, models, and Web 2.0 technologies and standards with regard to IT infrastructure.

� Attendees will leave with a vision of how they can utilize SOA, models, and Web 2.0 technologies.

Page 4: Services Oriented Infrastructure in a Web2.0 World

4© 2007 EMC Corporation. All rights reserved.

Agenda

� Service Oriented Architecture

� Event Driven Architecture

� Web 2.0

� Potential IT Management Implications

� Conclusions

Page 5: Services Oriented Infrastructure in a Web2.0 World

5© 2007 EMC Corporation. All rights reserved.

“Form ever follows function”‡

‡ Louis Henri Sullivan, Architect (September 3, 1856-April 14, 1924)

Not the other way around…..

Page 6: Services Oriented Infrastructure in a Web2.0 World

6© 2007 EMC Corporation. All rights reserved.

Service Oriented Architecture - SOA

SOA is an architectural style whose goal is to achieve loose couplingamong interacting components for the purposes of interoperability,

composition, and orchestration.

By loose coupling we mean:The ability to add, modify, and delete components from the system with

minimal impact on other components.SOA is not � just about Web Services.� a rehash of J2EE, CORBA, DCE.� just another transport.SOA is about HOW

– How to build composite distributed systems

Page 7: Services Oriented Infrastructure in a Web2.0 World

7© 2007 EMC Corporation. All rights reserved.

Lest We ForgetThe 8 fallacies when building distributed systems:

1. The network is reliable.

2. Latency is zero.

3. Bandwidth is infinite.

4. The network is secure.

5. Topology doesn’t change.

6. There is one administrator.

7. Transport cost is zero.

8. The network is homogenous.

by Peter Deutsch, Sun Fellow

Composite distributed systems built with SOA can fall into these traps but there are mechanisms in SOA that help to avoid some of these pitfalls.

Page 8: Services Oriented Infrastructure in a Web2.0 World

8© 2007 EMC Corporation. All rights reserved.

SOA: Core Principles

� Loose coupling– Late binding– Interface to implementation (as well)– Interface fidelity

§ The more precise the interface, the tighter the coupling

� Described interfaces– Decouple components– Separation of concerns

� Implementation agnostic– Platform independent– Hidden implementation

� Message oriented– Well-defined messages– Coarse grained– Asynchrony

� Composition– Behavior is the sum of all behaviors in the system

� Internet scale

Differentprotocol bindings

Differentprotocol bindings

MediationMediation

Connectors/adaptersConnectors/adapters

Native resourcesNative resources

Common interfaceCommon interface

Page 9: Services Oriented Infrastructure in a Web2.0 World

9© 2007 EMC Corporation. All rights reserved.

So what is it really all about?

It is about the messages defined in the interface.

In SOA there are three distinct data models in every interaction

1. The consumer-side implementation data model 2. The provider-side implementation data model 3. The message data model

The only data model of consequence in an SOA is the message data model; this is the agreed upon (contract) ‘data model’ for the consumer and the provider.

All of the implementation data models are hidden.

Page 10: Services Oriented Infrastructure in a Web2.0 World

10© 2007 EMC Corporation. All rights reserved.

SOA: Composition vs. Coding

• public String getEmployeeName( long employeeID ) throws javax.ejb.CreateException, java.rmi.RemoteException

• { Connection conn = null; PreparedStatement ps = null;

• try

• { conn = this.getConnection();

• ps = conn.prepareStatement("select name from employees_files where idnumber = ?"); ps.setLong(1, employeeID);

• ResultSet rs = ps.executeQuery(); if (rs.next()) { return rs.getString(1);

• } return "Unknown"; }

• catch (SQLException sqe) { return sqe.getMessage(); } finally { if (ps != null) { try { ps.close(); }

ApplicationComposition

§ Metadata-driven configuration, composition, and business rules§ For application specialists (requirements experts) not developers§ Apps composed from existing services built by developers

vsvs

Page 11: Services Oriented Infrastructure in a Web2.0 World

11© 2007 EMC Corporation. All rights reserved.

� Messaging– Routing Addressing– Multiple Message

Sessions– Events &

Notification– Reliable Messaging– Message Packaging

� Transactions– Asynchronous

Services– Transaction– Orchestration

� Security– Security Policy– Secure Conversation– Trusted Message– Federated Identity

� Service State– Resource Transfer– Management

� Metadata– Policy– Publication &

Discovery– Base Service &

Message Description– Metadata Exchange

XML XML XMLXML

MessagingMessaging

Sec

urity

Sec

urity

Ser

vice

Sta

teS

ervi

ce S

tate

Tra

nsac

tions

Tra

nsac

tions

Met

adat

a

Web Services – An embodiment

Page 12: Services Oriented Infrastructure in a Web2.0 World

12© 2007 EMC Corporation. All rights reserved.

Web Services Can be SOAP or REST

� SOAP – Simple Object Access Protocol – Just SOAP, not Simple and not about Objects– Provides an extensible format and processing model

§ Allows components to be decoupled from other components (e.g., infrastructure components)

– Standards – Lots of them and still evolving– Commercial-grade tools, big vendor support

� REST – Representational State Transfer– HTTP, Uniform Resource Identifiers (URI), and XML– Simple use of GET, PUT, POST, and DELETE– Open tools, some resistance in commercial space

Page 13: Services Oriented Infrastructure in a Web2.0 World

13© 2007 EMC Corporation. All rights reserved.

Event Driven Architecture - EDA

EDA is an architectural style whose goal is to achieve loose couplingamong interacting components through the production, detection,

consumption, and reaction to events.

By loose coupling we mean:

The ability to add, modify, and delete components from the system with minimal impact on other components.

EDA is

� an asynchronous publish-and-subscribe model.

� great for a federated or autonomous processing environment.

� a declarative model; configuration not code.

EDA is about EVENTS as Messages

Page 14: Services Oriented Infrastructure in a Web2.0 World

14© 2007 EMC Corporation. All rights reserved.

SOA and EDA Synergies

� SOA is about – Loose coupling at the interface level.– Contractual agreement on the messages.– Decoupling implementation from interface.

� EDA is about – Loose coupling at the messaging level through configured publisher

and subscriber connections via topics.– Connecting messages (data models) together.

� EDA complements SOA by providing a rich asynchronous messaging capability.

– Publish-subscribe interaction model is the inverse of request-reply.

� Both architectures focus on messages (data models) and loose coupling.

– The formalization of the message data model creates opportunities.

Page 15: Services Oriented Infrastructure in a Web2.0 World

15© 2007 EMC Corporation. All rights reserved.

What does this describe?

Page 16: Services Oriented Infrastructure in a Web2.0 World

16© 2007 EMC Corporation. All rights reserved.

Architecture of Participation‡– Web 2.0

� Systems that are designed explicitly for user contribution� The current technology

– AJAX – Asynchronous JavaScript and XML§ Also called Rich Internet Applications (RIA)

– RSS/Atom – published changes to information§ Really Simple Syndication § Collectively called ‘feeds’

– Wikis – freeform collaborative authoring§ User- or machine-contributed content § With history and syndication

– Blogs – user-generated content§ With Trackbacks, permalinks, syndication

– Social tagging – public bookmarks– Presence – realtime collaboration

‡ Tim O’Reilly, Warburg-Pincus’ annual technology conference, May, 2003

Page 17: Services Oriented Infrastructure in a Web2.0 World

17© 2007 EMC Corporation. All rights reserved.

Characteristics of Web 2.0

� Unstructured� Self-managed� Folksnomies� Freeform collaboration� User-defined metadata� In-system authoring

Page 18: Services Oriented Infrastructure in a Web2.0 World

18© 2007 EMC Corporation. All rights reserved.

Wikis

� Software that allows users to freely create and edit content using any browser

– A collaborative website– “Open editing” but easy to correct mistakes– Recent changes can be monitored actively or passively

� At last count there were at least 80 implementations of Wiki

� Provides communities and categorization

� Freeform data model with tagging

The simplest online database that could possibly work.‡

‡ Ward Cunningham, Inventor of Wiki

Page 19: Services Oriented Infrastructure in a Web2.0 World

19© 2007 EMC Corporation. All rights reserved.

Blogs

� Software that allows individuals to freely create and edit content using any browser

– An “open mic”

� Trackbacks, blogrolls, and aggregators create an understanding of experts

� Freeform data model with tagging

� Tagging provides the context for understanding area of expertise

User-generated content, in a journal style

Page 20: Services Oriented Infrastructure in a Web2.0 World

20© 2007 EMC Corporation. All rights reserved.

AJAX

� AJAX utilizes– Standards-based presentation (XHTML & CSS)– Dynamic display manipulation using DOM (Document Object Model)– Data model interchange and manipulation using XML & XSLT– Asynchronous data retrieval using XMLHttpRequest– JavaScript to glue it all together

� To create RIA (Rich Internet Applications)– Web pages that feel more responsive– That only exchange small amounts of data behind the scenes– That do not have to be reloaded– Which improves interactivity, speed, and (hopefully) usability

Asynchronous JavaScript and XML. Not a technology, a technique for creating highly interactive web pages utilizing a

number of technologies.

Page 21: Services Oriented Infrastructure in a Web2.0 World

21© 2007 EMC Corporation. All rights reserved.

AJAX – The “Global SOA”?

� AJAX is the natural service consumer

� AJAX allows users to interact dynamically with SOA-type services and their data models:

– SOAP– REST– RSS– ATOM– XML– SQL

Page 22: Services Oriented Infrastructure in a Web2.0 World

22© 2007 EMC Corporation. All rights reserved.

The Match

User Interface

DataRich Internet Applications

SOA

?

?

Page 23: Services Oriented Infrastructure in a Web2.0 World

23© 2007 EMC Corporation. All rights reserved.

Mashups

� This is really about content repurposing and reuse

� Both SOA and Mashups are compositional models– SOA: think corporate, consultants, big budget…– Mashups: just the opposite

� But that is changing….

The combination of content from more than one source into an integrated experience

Information and presentation are being separated in ways that allow for novel forms of reuse ‡

‡ Sho Kuwamoto, Adobe, Engineering, http://weblogs.macromedia.com/sho/archives/2005/08/web_20_rias_aja.cfm

Page 24: Services Oriented Infrastructure in a Web2.0 World

24© 2007 EMC Corporation. All rights reserved.

Impact to IT Management

Page 25: Services Oriented Infrastructure in a Web2.0 World

25© 2007 EMC Corporation. All rights reserved.

What if….

� you had access to all of the certified configuration information and could easily associate that with your infrastructure?� you could tap into a community that maintained content on

events and alerts that they have seen in their infrastructures?� you had access to a huge community of experts on a wide

range of infrastructure topics?� health, faults, and alerts were delivered to you anywhere

you would like with RSS?� a chronological log of information of all changes in the

infrastructure was available anywhere?� patches and software updates were delivered to you

asynchronously as they became available?� the interface to resources mimicked a Wiki-style interaction?

Page 26: Services Oriented Infrastructure in a Web2.0 World

26© 2007 EMC Corporation. All rights reserved.

Business Process

Service Level Mgmt

Service Invocation

Functional Components

Resource Managers

Resources

Monolithic Products

Manual Processes and Workflows

Manual Processes and Workflows

Manual Processes and Workflows

NetWorker Replicat’nManager

DiskXtender

EmailXtender

Page 27: Services Oriented Infrastructure in a Web2.0 World

27© 2007 EMC Corporation. All rights reserved.

Manual Processes and Workflows

Manual Processes and Workflows

Manual Processes and Workflows

Decomposed into Service Oriented Infrastructure

Business Process

Service Level Mgmt

Service Invocation

Functional Components

Resource Managers

Resources

Backup Replication Archiving DataMovement

Security Performance Availability Compliance

Web Services

SLOs / SLAs

Content Mgmt Bus. Intelligence Collaboration Business Apps

Page 28: Services Oriented Infrastructure in a Web2.0 World

28© 2007 EMC Corporation. All rights reserved.

Conclusions & Recommendations

Ü Embark on the path to Service Orientation² Create well-defined interfaces and message models ² Use Web 2.0 technologies to “mashup” enterprise data models with Internet data

models

² Avoid tight coupling to implementation, interaction model, and data models

Ü Encourage the use of new collaboration tools² Establish communities for disciplines of interest

² Encourage internal experts to share knowledge through Wikis and blogs

² Harvest those data models and experts through mashups and realtime collaboration

Ü Watch out for accidental architectures² Command-and-control models (request-reply, point-to-point messaging)

² Fine-grained interactions

² Data model linkages

Page 29: Services Oriented Infrastructure in a Web2.0 World
Page 30: Services Oriented Infrastructure in a Web2.0 World

30© 2007 EMC Corporation. All rights reserved.

Backup slides

Page 31: Services Oriented Infrastructure in a Web2.0 World

31© 2007 EMC Corporation. All rights reserved.

On Information Model and Data ModelsFrom RFC3444[i]:

The main purpose of an IM is to model managed objects at a conceptual level, independent of any specific implementations or protocols used to transport the data. The degree of specificity (or detail) of the abstractions defined in the IM depends on the modeling needs of its designers. In order to make the overall design as clear as possible, an IM should hide all protocol and implementation details. Another important characteristic of an IM is that it defines relationships between managed objects.

DMs, conversely, are defined at a lower level of abstraction and include many details. They are intended for implementers and include protocol-specific constructs.

Stated another way:

The IM includes abstract entities and their relationships to one another as well as operations that can be driven on those entities.

The DM deals with the implementation details or protocol details, of the IM. For example, implementation object models and protocol/message formats.

[i] “On the Difference Between Information Models and Data Models”, http://www.ietf.org/rfc/rfc3444.txt