capitulo 2 - sistemas distruibuidos
• Arquitetura de software trata da organização lógica do software: como os componentes interagem, de que modo são estruturados, questões de independência, etc.
• Arquitetura de um sistema trata de como são posicionados os componentes de software, suas instanciações, e como ocorrem suas interações
A. S. Tanenbaum, M. Van Steen. Sistemas Distribuídos: Princípios e paradigmas - Cap 2: Arquiteturas / 1
Hélio Crestana Guardia - 2013
Arquiteturas de Sistemas Distribuídos
• Sistemas Distribuídos são comumente partes complexas de software dispersas por múltiplas máquinas.
• Organização do sistema é fundamental para controlar complexidade.
• Possível distinção entre a organização lógica e a implementação física.
• Arquiteturas de software tratam de como os componentes são organizados e devem interagir.
• Diferentes formas de organização possíveis: centralizadas, distribuídas e híbridas. • É também possível ter sistemas que monitoram seus próprios comportamentos e fazem adequações necessárias, caracterizando sistemas autonômicos. A. S. Tanenbaum, M. Van Steen. Sistemas Distribuídos: Princípios e paradigmas - Cap 2: Arquiteturas / 2
Hélio Crestana Guardia - 2013
Estilos Arquitetônicos
• Estilo arquitetônico é definido em termos de componentes, de como os componentes são interconectados, dos dados trocados entre componentes, e de como os elementos são agrupados para formar um sistema.
• Componente é uma entidade modular com interface bem definida, que pode ser substituído dentro do seu ambiente.
• Conector é um mecanismo que serve de mediador da comunicação ou da cooperação entre componentes.
– Conector pode ser formado, por exemplo, por mecanismos para chamadas de procedimentos (remotos), para passagem de mensagem ou streaming de dados.
• Principais estilos arquitetônicos para sistemas distribuídos:
– Arquitetura em camadas
– Arquitetura baseada em objetos
– Arquitetura