O documento discute diferentes arquiteturas de sistemas, incluindo arquiteturas físicas e lógicas, arquiteturas separadas fisicamente e logicamente, e arquiteturas de duas e três camadas. A arquitetura de três camadas baseada na web com cliente "magro" é destacada como foco do treinamento e uma das arquiteturas mais utilizadas para desenvolvimento para internet.
2. Arquitetura Física e Arquitetura
Lógica
• Os servidores podem estar todos fisicamente na
mesma máquina, apesar de existir a divisão
conceitual de responsabilidades e
processamento, ou podem estar separados
fisicamente, cada um em uma máquina
separada.
• Muitas vezes não é necessário inicialmente
separar os servidores fisicamente, mas a divisão
conceitual garante a escalabilidade e a
flexibilidade da arquitetura, permitindo e
facilitando a separação física dos servidores no
momento que seja necessário.
ETEC - Pres. Roosevelt Prof. Juarez Brandão
3. Arquitetura somente lógica
Servidor HTTP
Container Web
Container EJB
Cliente
Banco de Dados
Todos os servidores estão fisicamente na mesma máquina
ETEC - Pres. Roosevelt Prof. Juarez Brandão
4. Arquitetura separação lógica e
física
Servidor HTTP
Container Web
Container EJB
Cliente
Banco de Dados
Os servidores estão separados conforme a necessidade,
neste caso o Container Web e Container EJB estão na
ETEC - Pres. Roosevelt Prof. Juarez Brandão
mesma máquina
5. Arquitetura em duas camadas
Cliente/Servidor
Arquitetura típica quando não temos o conceito de
servidor intermediário, na qual temos muitas
aplicações construídas. Exemplos de tecnologia
tipicamente utilizadas:
• Visual Basic com banco de dados;
• Oracle forms / Report com Oracle Database;
• Centura / Power Designer com Sybase;
• Delphi com banco de dados;
ETEC - Pres. Roosevelt Prof. Juarez Brandão
6. Por ser uma arquitetura que centraliza todo o processamento
crítico no banco de dados, acaba sendo limitado para a
integração, além de tornar o código muito complexo devido à
linguagem SQL.
Fat Client
Server
GUI
Business Logic
Security
Data Processing
Persistence
Transaction Processing
ETEC - Pres. Roosevelt Prof. Juarez Brandão
7. Arquitetura em três camadas: baseada
na Web com cliente “magro”
• Este padrão permite uma melhor distribuição de processamento e também
usa um cliente mais enxuto para acessar a aplicação. Esta arquitetura é o
foco do treinamento deste módulo e talvez uma das arquiteturas mais
procuradas e utilizadas para desenvolvimento para internet.
• Devemos sempre tomar cuidado com o modismo de utilizar browser / HTML
como cliente, pois o HTML muitas vezes restringe ou dificulta o
desenvolvimento de uma boa interface gráfica.
Quando a solução for baseada na Web utilizando HTML, sugerimos que
tenha sempre um Web-Designer na equipe de desenvolvimento.
• Vale lembrar que podemos ter soluções baseadas na WEB que utilizam
clientes “gordos”. Dessa forma a acessibilidade da solução não fica
prejudicada e podemos ter clientes mais especificos. Para isto, podemos
utilizar Servlets ou JSPs, gerando XML para clientes Macromedia Flash,
Swing ou qualquer outro.
ETEC - Pres. Roosevelt Prof. Juarez Brandão
8. Arquitetura Web 3 camadas
Browser WEB Container Sistemas Legados
JDBC
(Conectores)
Database
HTML, HTTP, JSP, Servlets,
XML XML, JavaMail
ETEC - Pres. Roosevelt Prof. Juarez Brandão