Professional Documents
Culture Documents
Acio Costa
O que Arquitetura?
Arquiteturas em Aplicaes
Cliente/Servidor
Servidores
So equipamentos com maior
poder de processamento e armazenamento.
Clientes
Geralmente microcomputadores PCs ligados
em rede.
Cliente
Inicia e termina as conversa es com os Servidores, solicitando
servios;
No se comunica com outros Clientes;
Normalmente respons vel por receber e enviar dados em uma
comunicao com o usurio;
Torna a rede transparente ao usurio;
Hardware: pode ser um micro simples;
Software: tem incio e fim definido.
Servidor
Recebe
Lgica
do Negcio
O c digo que gera a interface vis vel do programa faz parte da aplica o
Cliente. Todos os formulrios, menus e demais elementos visuais nele esto
contidos. Ento uma alterao na interface do programa requer a gerao de
uma nova verso para todos os computadores.
Lgica
do Negcio
Arquitetura Cliente/Servidor
3 Camadas
Arquitetura Cliente/Servidor
4 Camadas
Bsica
Qual o avano?
O cliente deixa de existir como um programa que precisa ser instalado em
cada micro. O acesso aplicao feito atravs de aplicativos genricos
chamados de Navegador.
Navegador
Apresentao:
interface
Lgica
Apresentao
Protocolo
Servio
Apresentao
Softwares que interpretam conte dos vindos da Internet e
exibindo-os para o usurio.
Protocolo
Conven o que controla e possibilita uma conex o,
comunica o, transfer ncia de dados entre dois sistemas
computacionais.
Request
Response
A porta de comunicaes onde o servidor aguarda requisies , por default, a porta de servios TCP/IP de nmero 80.
25
Servios
Protocolo IP
DNS
Servios
Portas
Servios
Servio Web
GET
HEAD
POST
PUT
DELETE
TRACE
OPTIONS
Um servidor Web mnimo, que suporte HTTP 1.1, deve ser capaz de entender pelo
menos os mtodos GET e HEAD.
32
Mtodo
Descrio
GET
POST
HEAD
PUT
DELETE
OPTIONS
CONNECT
Mtodo GET
34
Cdigo
Status
200 OK
204 No Response
401 Unauthorized
403 Forbidden
405 Mtodo no
permitido
Cookies
Grupo de dados trocados entre o servidor de p ginas e o
navegador colocado em um ficheiro criado no computador do
usurio.
35
Cookies
Descrio
Domain
Path
Content
Expires
Secure
Assim o navegador confirma que os servidores esto enviando dados fieis a respeito de seu domnio.
Cookies - Exemplo
38
Sesses
Como http usa conexes stateless.
Send Request
Sesses
Sesses permitem usurios manterem estado entre vrias conexes.
O servidor gera um session ID que enviado para o cliente na
primeira resposta, assim o Cliente reenvia esse session ID sempre
que for fazer uma nova requisio.
40
41
protocolo://maquina:porta/recurso
http://www.dominio.com.br/teste/minha/pagina/texto.html
Imagem;
Arquivo HTML;
Formato no suportado. (.rar e etc).
44
Subtipo
image/jpg
text/html
text/plain
.txt
x-application/java
.class
Servidor Web
Servidor Web
Software responsvel por aceitar pedidos e gerar respostas HTTP.
Esse pedidos geralmente s o feitos por Browsers e se referem a
pginas HTML.
Servidor Web
Modelo de Entrega de Pginas:
Estticos
Dinmicos
Contedo criado dinamicamente por scripts do lado do servidor para ento ser
retornado para o cliente.
Esttico
Dinmico
Servidores Web
50
Internos
Esto relacionados a um nico domnio de segurana,
geralmente a prpria empresa ou uma Intranet.
Externos
Conectados a mais de um dom nio ampliando as fronteiras da
conduo de negcios atravs da Internet.
Tecnologias de Apresentao
Se destinam formatao e estruturao das pginas Web;
Podem ser usadas tambm para construir a interface de
aplicaes Web no browser.
55
Tecnologias Interativas
Permitem o desenvolvimento de aplica es e p ginas com um alto
nvel de interatividade com o usurio.
Podem ser executadas:
Lado do Cliente
Lado do Servidor
SOA
Service Oriented Architecture
61
62
Arquitetura e Servios
Cloud Computing
63
Cloud Computing
http://csrc.nist.gov/groups/SNS/cloud-computing/
SaaS
O consumidor usa a aplica o, mas n o controla o sistema
operacional, hardware e infra-estrutura de rede na qual esta
funcionando.
Calendar
Planilhas
Gmail
PaaS
O consumidor usa o ambiente do hosting para as suas aplicaes.
O usu rio controla a aplica o que roda no ambiente (e
possivelmente tem algum controle sobre o ambiente), mas
n o controla o sistema operacional, hardware e rede.
Tipicamente a plataforma vira um framework.
69
IaaS
O consumidor usa os recusros fundamentais da computao
como consumo de processamento, storage, componentes de
rede e middleware. O consumidor controla o sistema
operacional, storage, deploy de aplicaes, ..
Mas no controla a infra-estrutura
que controla a nuvem.