Você está na página 1de 41

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

Prof. Marcelo de S Barbosa

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

MDULO 6: Sistemas distribudos baseados em coordenao. Coordenao de servios Web

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS Coordenao de servios Web A infraestrutura SOAP suporta interaes requisioresposta entre clientes e servios web. Entretanto, muitas aplicaes teis envolvem vrias requisies que precisam ser executadas em uma ordem em particular. Por exemplo, ao se fazer reservas para um vo, so reunidas as informaes sobre preo e disponibilidade, antes que as reservas sejam feitas. Quando o usurio interage com pginas web por intermdio de um navegador para fazer reserva em um vo ou para dar um lance em um leilo, a interface fornecida pela navegador controla a sequncia em que as operaes so executadas.

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS Transaes distribuidas planas e aninhadas Uma transao cliente se torna distribuda se ativa operaes em vrios servidores diferentes. Existem duas maneiras distintas pelas quais as transaes distribudas podem se estruturadas: como transaes planas e transaes aninhadas. Em uma transao plana, um cliente faz pedidos para mais de um servidor. Em uma transao aninhada, a transao de nvel superior pode abrir subtransaes e assim sucessivamente em qualquer profundidade de aninhamento.

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS Transaes distribudas planas e aninhadas

M T11 X Client

T
T Client

T1 T 12 T T2 Y
21

Z T
22

(a) Flat transaction

(b) Nested transactions

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS Coordenao de uma transao distribuida Os servidores que executam pedidos como parte de uma transao distribuida precisam se comunicar uns com os outros para coordenar suas aes quando a transao efetivada
X Client T T = openTransaction openSubTransaction a.withdraw(10); openSubTransaction b.withdraw(20); openSubTransaction c.deposit(10); openSubTransaction d.deposit(20); closeTransaction T
2

T1

a.withdraw(10)

Y B b.withdraw(20)

Z T3 T4 C D c.deposit(10) d.deposit(20)

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS Tem-se trabalhado em um modelo geral para a coordenao de servios web, o qual semelhante ao modelo de transao distribuida descrito anteriormente pois tm funes de coordenador e participante que so capazes de atuar em protocolos especficos, por exemplo, para executar uma transao distribuida. Esse trabalho, que chamado WS-Coordination descrito por Langworthy[2004]. Requisitos de coreografia: se destina a suportar interaes entre servios web que geralmente so gerenciadas por diferentes empresas e organizaes.

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS MDULO 8: Introduo ao SOA Servios Gerenciamento de Processos de Negcios MODULO 9: SOA e Desempenho; SOA e Segurana;

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

SOA SERVICE ORIENTED ARCHITECTURE

Process management facilitates organizational change supporting innovation. SOA uma abordagem arquitetural corporativa que permite a criao de servios de negcio interoperveis que podem facilmente ser reutilizados e compartilhados entre aplicaes e empresas. Gartner Group Businesses want change at the speed of business. Is yours an innovation-driven business?

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS BPM Business process management BAM Business activity monitoring KPI Key performance indicator Organization, business, company, corporation, and enterprise will be used interchangeably Free-form process layout in WebSphere Business Modeler The traditional flowchart layout with object attributes Swimlane process layout in Modeler Emphasis is on the handoffs between performers Governance Implementing standards, controls, and ownership of processes throughout the enterprise

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS


Service Web service: integration of machine-to-machine interaction over the Web SOA Service-oriented architecture J2EE (Java 2 Platform, Enterprise Edition) A programming platform Eclipse An open source platform-independent software framework Business object A set of attributes that represents a business entity Relationships (data cross-referencing) An association between two or more data entities WSDL Web Services Description Language BPEL Business Process Execution Language Process choreography The order in which services will be invoked

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS Simple things do not necessarily need a model. The solution is relatively easy to construct. Few people collaborate or use the solution (often only one). The scope of future needs is unlikely to grow substantially. Certain complex systems must begin with a design or another abstract representation. Construction of an office building needs architectural plans and a mock-up for visualization. Modeling provides visualization of the entire system. Allows assessment of various options Communicates design risks before actual construction

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS A model serves as an abstraction of the item being built. Business analysts, engineers, scientists, and other professionals who build complex structures or systems create models. Sometimes the models are physical. Scaled mock-ups of airplanes, houses, or autos Sometimes the models are less tangible. Financial models, market trading simulations, electrical circuit diagrams Traditional flow charts are a common method for representing the paths of a process. Structure charts, or simple block diagrams with arrows, are often used on whiteboards.

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS Web Services Description Language (WSDL) is the XMLbased file that describes the Web service. The Web service request uses this file to bind to the service. SOAP is the XML-based protocol that the Web service request uses to invoke the service. Universal Description Discovery and Integration protocol is the registry that hosts the service broker. UDDI is similar to the Yellow Pages in a phone book.

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

MODULO 9: SOA e Desempenho. SOA e Segurana.

30

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS

SOA O seu servio est seguro?

31

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS ATAQUE x DEFESA

32

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS FOOTPRINT

33

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS SNIFFING, DATA TAMPERING, REPLAY-ATTACK, MITM

Man-in-the-middle-attack
34

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS SOLUES

35

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS ATAQUES DE FORA BRUTA XDOS XML denial of service

36

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS SOLUES

37

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS CODE INJECTION - XML

38

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS SOLUES

39

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS PARSING ATTACKS

40

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS SOLUES

XML Schema uma linguagem baseada no formato XML para definio de regras de validao ("esquemas") em documentos no formato XML
41

Você também pode gostar