Pesquisar este blog

segunda-feira, 11 de setembro de 2017

SOA Arquitetura Orientada a Serviços

Surgimento

Conforme relatado no post de SOAP, no início as páginas da internet eram todas estáticas, contendo HTMLs não reativos as ações dos usuários. Depois de algum tempo, com o surgimento do javascript, começaram a aprecer a Web 2.0, as as páginas dinâmicas.
Estas páginas dinâmicas foram construídas em cima de uma arquitetura distribuída e conforme os anos foram passando, as empresas notaram que poderiam ganhar dinheiro provendo dados para seus clientes. Neste ponto, os sistemas começaram a se abrir mais e as empresas começaram a expor alguns dados.
Esta exposição de dados foi realizada através de serviços na Web, e existem vários exemplos de serviços abertos na web.
Com isto, todos os dados das empresas começaram a ser expostos, tanto externamente, quanto internamente, por serviços web e assim surgiu o SOA que é uma arquitetura distribuída onde todos os dados são expostos através de serviços.

Caraterísticas

O SOA surgiu para substituir os RPCs, pois as empresas precisavam de algo mais dinâmico e mais fácil de ser acessado.
Os serviços web, podem ser acessados por praticamente qualquer linguagem de programação, basta que ela consiga fazer uma chamada HTTP e consiga decodificar JSONs ou XMLs.
Ao usar SOA deve-se expor as interfaces dos seus serviços, ou os contratos e uma forma muito comum de expor estes serviços, quando usamos o protocolo SOAP, baseado em xml, é usarmos a WSDL (Web Service Description Language), ou linguagem de descrição do Web Service.
O WSDL é uma linguagem de metadados, ou seja, dados sobre os dados, e acessando o WSDL de um serviço é possível gerar código, na sua linguagem de preferencia, que traduzem o acesso aqueles webservices.
Dentre os dados, que estão disponíveis no WSDL temos a lista dos serviços disponíveis, assim como om qual método HTML ele é acessado, e os atributos, e seus tipos, daquele serviço.
Com o SOA é possível isolar bem as partes de um software web, casando muito bem com a arquitetura de 3 camadas, ou o MVC. Em um software SOA, os desenvolvedores fazem os serviços, que serão acessados pelos WebDesigners, os quais ficarão responsáveis por desenvolver a iteração com o usuário.

Link pra apresentação

Nenhum comentário:

Postar um comentário