Professional Documents
Culture Documents
Arquiteturas
Sistemas distribudos muitas vezes so complexas peas de software cujos componentes esto, por definio, espalhados por vrias mquinas. Para controlar sua complexidade, crucial que esses sistemas sejam organizados adequadamente. H diferentes modos de ver a organizao de um sistema distribudo, mas uma maneira bvia fazer uma distino entre a organizao lgica do conjunto de componentes de software e, por outro lado, a realizao fsica propriamente dita.
Arquiteturas
A organizao de sistemas distribudos trata, em grande parte, dos componentes de software que constituem o sistema. Essas arquiteturas de software nos dizem como os vrios componentes de software devem ser organizados e como devem interagir. A realizao efetiva de um sistema distribudo implica que especifiquemos e coloquemos componentes de software em mquinas reais. Para fazer isso, h diferentes opes. A especificao final de uma arquitetura de software tambm denominada arquitetura de sistema.
Arquiteturas
Como vimos anteriormente, uma meta importante de sistemas distribudos separar aplicaes das plataformas subjacentes provendo uma camada de middleware. Adotar tal camada uma deciso arquitetnica importante, e sua finalidade principal proporcionar transparncia de distribuio. Contudo, preciso fazer compromissos para conseguir transparncia, o que resulta em vrias tcnicas para tornar o middleware adaptativo.
Arquiteturas
Tambm pode se conseguir a adaptabilidade em sistemas distribudos fazendo o sistema monitorar seu prprio comportamento e tomar as providncias adequadas quando necessrio. Esse modo de ver as coisas resultou em uma classe que agora chamada de sistemas autonmicos. Esses sistemas distribudos so freqentemente organizados sob a forma de realimentaes de contato que formam um importante elemento arquitetnico durante o projeto de um sistema.
Estilos Arquitetnicos
Estilos arquitetnicos so formulados em termos de componentes, do modo como esses componentes esto conectados uns aos outros, dos dados trocados entre componentes e, por fim, da maneira como esses elementos so configurados em conjunto para formar um sistema. Um componente uma unidade modular com interfaces requeridas e fornecidas bem definidas que substituvel dentro de seu ambiente.
Estilos Arquitetnicos
A questo importante sobre um componente para sistemas distribudos que ele pode ser substitudo, contanto que respeitemos suas interfaces. Um conceito um pouco mais difcil de entender o de um conector que, em geral, descrito como um mecanismo que serve de mediador da comunicao ou da cooperao entre componentes. Por exemplo: um conector pode ser formado pelas facilidades para chamadas de procedimento (remotas), passagem de mensagem ou fluxos de dados.
Estilos Arquitetnicos
Usando componentes e conectores, podemos chegar a vrias configuraes que, por sua vez, foram classificadas em estilos arquitetnicos, sendo os mais importantes:
Arquiteturas em camadas Arquiteturas baseadas em objetos Arquiteturas centradas em dados Arquiteturas baseadas em eventos
Camada N
Camada 1
Objeto
Componente
Cliente
Espera resultado
Requisio Servidor
Resposta
Middleware objeto Interceptador de nvel de mensagem send (B, faz-alguma-coisa(valor) S.O. local Para objeto B