Arquitetura de Sistemas Distribuídos Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI – Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Sistemas Distribuídos – 8º Período Objetivos • Nesta aula iremos apresentar os conceitos sobre as arquiteturas de Sistemas Distribuídos. Serão abordados os tipos de arquiteturas e o conceito de Middleware. Este conceito é fundamental para o entendimento do desenvolvimento de aplicações em ambientes distribuídos. Sistemas Distribuídos – 8º Período Plano de Aula • Arquitetura de Sistemas Distribuídos – Arquiteturas – Tipos de Arquiteturas – Middleware Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Arquiteturas – Formadas em termos de componentes, do modo como esses componentes estão conectados uns aos outros, dos dados trocados entre componentes e, por fim, da maneira como esses elementos são configurados em conjunto para formar um sistema. – Componente é uma unidade modular com interfaces requeridas e fornecidas bem definidas que é substituível dentro de seu ambiente. – Conector é um mecanismo mediador da comunicação ou da cooperação entre componentes. Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Arquiteturas – Em geral, são complexas peças de software cujos componentes estão, espalhados por várias máquinas. – Os principais estilos arquitetônicos são: – – – – Em camada Baseadas em Objeto Centradas em Dados Baseadas em Eventos Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Arquiteturas Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Arquiteturas em Camadas – Componentes são organizados em camadas; – Componente da camada N tem permissão de chamar componentes na camada N-1; Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Arquiteturas baseadas em Objetos – Objeto → Componente; – Objetos são conectados por meio de uma chamada de procedimento (remota). – Amplamente utilizada para sistemas de software de grande porte. Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Arquiteturas Centradas em Dados – Processos se comunicam por meio de um repositório comum (espaço de dados compartilhados); – Sistemas distribuídos baseados na Web, em grande parte, são centrados em dados Componente Repositório comum de dados Sistemas Distribuídos – 8º Período Componente Arquitetura de Sistem. Distribuídos • Arquiteturas Baseadas em Eventos – Sistemas publicar/subscrever; – Processos publicam eventos e o middleware assegura que somente os processos que se subscreveram (“se inscreveram”) para esses eventos os receberão; Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Middleware – Middleware é um agente de interoperabilidade que pode ser entendido como uma camada de software que não é uma aplicação propriamente dita e que não faz parte do sistema operacional. – Esta camada de middleware esconde detalhes de dispositivos de hardware e de software adicional, para fornecer uma interface abstrata e mais simples de programar às aplicações. – Em outras palavras, o middleware simplesmente torna mais fácil a construção das aplicações na medida em o desenvolvimento pode se focar no propósito específico das aplicações. Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Middleware Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Onde o Middleware se encaixa? – Entre aplicações e plataformas distribuídas, com finalidade de proporcionar um grau de transparência à distribuição de dados, processamento e controle. – É uma camada de software posicionada entre as outras camadas de software Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Contexto do Middleware Sistemas Distribuídos – 8º Período Arquitetura de Sistem. Distribuídos • Contexto do Middleware Sistemas Distribuídos – 8º Período Dúvidas Página do Professor Mauro: http://www.dai.ifma.edu.br/~mlcsilva Sistemas Distribuídos – 8º Período Próxima Aula • Metas de um Sistema Distribuído Sistemas Distribuídos – 8º Período