web services e enterprise services vasco veiga ([email protected]).net & developer group...

23

Upload: internet

Post on 17-Apr-2015

112 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation
Page 2: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Web Services eEnterprise Services

Vasco Veiga ([email protected])

.NET & Developer GroupMicrosoft Corporation

Page 3: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Agenda

Arquitecturas Web Services / SOA

Web Services em .NET

Enterprise Services

Page 4: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Agenda

Arquitecturas Web Services / SOA

Web Services em .NET

Enterprise Services

Page 5: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

O que é um Web Service?

Componente aplicacional Componente aplicacional programável, acessível via programável, acessível via protocolos web “standard”protocolos web “standard”

Protocolos Internet Abertos

XML WebXML WebServiceService

SOAPSOAPSOAPSOAP Permite a troca de mensagens Permite a troca de mensagens

“estruturadas” usando XML“estruturadas” usando XML

WSDLWSDLXML Web services XML Web services

Description LanguageDescription Language

WSDLWSDLXML Web services XML Web services

Description LanguageDescription Language

É definido em termos dos formatos e É definido em termos dos formatos e ordem da troca de mensagensordem da troca de mensagens

Baseado em protocolos “Internet” Baseado em protocolos “Internet” (standards “de facto”) (standards “de facto”)

XML e HTTPXML e HTTP

UDDIUDDIUniversal Description, Universal Description,

Discovery and IntegrationDiscovery and Integration

UDDIUDDIUniversal Description, Universal Description,

Discovery and IntegrationDiscovery and Integration

É pesquisável através de uma É pesquisável através de uma directoria de serviços na (Intra)Internetdirectoria de serviços na (Intra)Internet

Page 6: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Web Services (na prática)Web Services (na prática)

DescobertaDescoberta

Vamos falar (SOAP)Vamos falar (SOAP)

““Design-Time” ou “Runtime”Design-Time” ou “Runtime” ““Runtime”Runtime”

http://yourservice.comhttp://yourservice.com

HTML ou XML com link para WSDLHTML ou XML com link para WSDL

Como falamos ? (WSDL)Como falamos ? (WSDL)http://yourservice.com/?WSDLhttp://yourservice.com/?WSDL

XML com descrição dos serviçosXML com descrição dos serviços

http://yourservice.com/svc1http://yourservice.com/svc1

XML/SOAP BODYXML/SOAP BODY

Pesquisar ServiçoPesquisar Serviçohttp://www.uddi.orghttp://www.uddi.org

Link para documento WSDLLink para documento WSDL

ClienteClienteXML XML WebWeb

ServiceService

UDDIUDDI

Web Web ServiceService

Page 7: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Web ServiceWeb Service

Web Service Hello FCT Web Service Hello FCT Consumir Web ServiceConsumir Web ServiceUsar VS.NET com WSUsar VS.NET com WS

Page 8: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Arquitectura Web Services / SOA

SOAP (Logical Messaging)SOAP (Logical Messaging)SOAP (Logical Messaging)SOAP (Logical Messaging)

TCP, HTTP, SMTP, …TCP, HTTP, SMTP, …TCP, HTTP, SMTP, …TCP, HTTP, SMTP, …

MessagingMessagingMessagingMessaging

WSDL, UDDIWSDL, UDDIWSDL, UDDIWSDL, UDDI

Quality Quality of Serviceof ServiceQuality Quality

of Serviceof Service

TransacçõesTransacçõesTransacçõesTransacções

Business Business ProcessesProcessesBusiness Business ProcessesProcessesBPEL4WSBPEL4WSBPEL4WSBPEL4WS

TransportsTransportsTransportsTransports

XML, EncodingXML, EncodingXML, EncodingXML, EncodingOutros protocolosOutros protocolosOutros serviçosOutros serviços

Outros protocolosOutros protocolosOutros serviçosOutros serviços

CoordenaçãoCoordenaçãoCoordenaçãoCoordenação

SegurançaSegurançaSegurançaSegurançaReliableReliableMessagingMessagingReliableReliable

MessagingMessaging

DescriptionDescriptionDescriptionDescription

Page 9: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

““Service Oriented Architecture” (SOA)Service Oriented Architecture” (SOA)

MensagensMensagens

AcordosAcordos

LinguagemLinguagemProgramaçãoProgramação

Object ModelObject Model

ServidorServidorAplicacionalAplicacional

BDBD

SistemaSistemaOperativoOperativo

BDBD

SistemaSistemaOperativoOperativo

LinguagemLinguagemProgramaçãoProgramação

Object ModelObject Model

ServidorServidorAplicacionalAplicacional

NósNósParceiro /Parceiro /

ClienteCliente

Exemplo de uma solução “tightly coupled”Exemplo de uma solução “tightly coupled”

Vantagens Web Services / SOA

Page 10: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Agenda

Arquitecturas Web Services / SOA

Web Services em .NET

Enterprise Services

Page 11: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Web Services em .NET

Os Web Services são (literalmente) o meio, não o fim

A implementação dos Web Services está a cargo de quem o expõe

Desde 2000 que a MS disponibiliza ferramentas para expor / consumir Web Services

A .NET Framework suporta nativamente XML e Web Services

Page 12: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Web Services em .NET

Page 13: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Mapeamento Web Services <-> .NET

DataData

SchemaSchema

ServicesServices

InvocationInvocation

WebWeb

XMLXML

XSDXSD

WSDLWSDL

SOAPSOAP

ConceitosConceitosAplicacionaisAplicacionais FrameworkFramework

ObjectosObjectos

ClassesClasses

MétodosMétodos

ChamadasChamadas

A .NET Framework fornece um A .NET Framework fornece um mapeamento bi-direcionalmapeamento bi-direcional

Page 14: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Web ServiceWeb Service

Web Service no SmartPhoneWeb Service no SmartPhoneSolução NotasSolução NotasWeb Service NotasWeb Service NotasAplicação NotasConsoleAplicação NotasConsoleAplicação NotasViewerAplicação NotasViewer

Page 15: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Web Services em .NET

““Scales Down”Scales Down”para devicespara devices

““Scales In” Scales In” na máquinana máquina

““Scales Up” Scales Up” em sistemasem sistemas““high-end”high-end”

““Scales Away” Scales Away” entre organizações & entre organizações &

geografiasgeografias

““Scales Out”Scales Out”AdicionandoAdicionando

máquinasmáquinas

Page 16: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Agenda

Arquitecturas Web Services / SOA

Web Services em .NET

Enterprise Services

Page 17: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Arquitectura de uma solução

User Interface Components

User Process Components

Service Interfaces

BusinessWorkflows

BusinessComponents

BusinessEntities

Data Access LogicComponents

Service Agents

Data Source Service

Seg

ura

nça

Ges

tão

Op

erac

ion

al

Co

mu

nic

açõ

es

Page 18: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Implementação de referência

ASP.NETASP.NET

RDBMSRDBMS

Message Message QueueQueue

Legacy Legacy SystemsSystems

OtherOtherResourcesResources

Windows Server 2003Windows Server 2003

ASPXASPXASMXASMX ASCXASCX

LDAP via ADSILDAP via ADSI

ADO.ADO.NETNET

System.MessagingSystem.Messaging

BizTalkBizTalk

ClienteClienteWinFormsWinForms

BrowserBrowser

.NET.NETRemotingRemoting

HTMLHTML

IISIIS

SOAPSOAP Component ServicesComponent Services

Component ServicesComponent Services

Page 19: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Modelos / Arquitectura

Web Clients

Web Farm

UIC

BC

DAC

UIP

Simple Web App Complex Web App Ent. Rich ClientExtended Enterprise

Database Clusters

Database Clusters

Application Farm

BC

DAC

Database Clusters

Web Clients

Web Farm

UIC

UIP

Application Farm

BC

DAC

Web Farm

UIC

UIP

SI

SA

Web Clients Rich Clients

UIC

UIP

Database Clusters

Application Farm

BC

DAC

Web Farm

SI

SA

Page 20: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Enterprise ServicesEnterprise Services

MTS em NT 4.0 (1995) MTS em NT 4.0 (1995) Notas TransaccionalNotas TransaccionalWS a partir do Enterprise ServicesWS a partir do Enterprise Services

Page 21: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Sumário

Web Services garantem Interoperabilidade

Arquitecturas SOA garantem modularidade

.NET Framework suporta nativamente Web Services

Muito simples de expor, desenvolver ou consumir Web Services

Enterprise Services são modulares, robustos e escaláveis

Page 22: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

Mais informação

http://www.microsoft.com/portugal/msdn

http://msdn.microsoft.com/architecture

news:news.microsoft.com/

• microsoft.public.pt.dotnet

.NET Shared Source CLI (MacOS/FreeBSD, Windows)

• http://msdn.microsoft.com/net/sscli/

Page 23: Web Services e Enterprise Services Vasco Veiga (vascov@microsoft.com).NET & Developer Group Microsoft Corporation

© 2002 Microsoft Corporation. All rights reserved.© 2002 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.