A figura a seguir apresenta um exemplo de uma aplicação web de acordo com o padrão em camadas:
Os atributos de qualidade para o padrão Cliente-Servidor são apresentados a seguir:
Como cada atributo de qualidade serão considerados e utilizados na solução depende da tecnologia usada para implementar a aplicação. JAVA, NET e outros servidores de aplicação proprietários têm diferente características que influenciam em como estes atributos de qualidade podem ser utilizados. As características de cada servidor de aplicação precisam ser compreendidas durante o projeto da arquitetura de modo que não haja surpresas desagradáveis mais tarde no projeto.
Servidores em cada camada podem ser replicados de modo que, se um falhar, os outros permanecem disponíveis.
XSe um cliente está se comunicando com um servidor que falhar, a maioria dos servidores web e de aplicações implementam failover transparente. Isto significa que um pedido do cliente é redirecionado para um servidor de réplica capaz de atender à requisição.
XA separação em camadas permite que uma camada seja totalmente alterada sem que as alterações afetem outra camada.
XEsta arquitetura já provou ser de alto desempenho. Questões-chave a serem consideradas são: a quantidade de threads simultâneas suportadas em cada camada, a velocidade de conexões entre as camadas e a quantidade de dados que são transferidos. Faz sentido também minimizar as chamadas entre camadas.
XComo os servidores em cada camada podem ser replicados, a arquitetura pode ser escalada com relativa facilidade.
X