Middleware (aplicativos distribuídos) - Middleware (distributed applications)

Middleware no contexto de aplicativos distribuídos é um software que fornece serviços além daqueles fornecidos pelo sistema operacional para permitir que os vários componentes de um sistema distribuído se comuniquem e gerenciem dados. O middleware oferece suporte e simplifica aplicativos distribuídos complexos . Inclui servidores da web , servidores de aplicativos , mensagens e ferramentas semelhantes que oferecem suporte ao desenvolvimento e entrega de aplicativos. O middleware é especialmente integrado à tecnologia da informação moderna baseada em XML , SOAP , serviços da Web e arquitetura orientada a serviços .

O middleware geralmente permite a interoperabilidade entre aplicativos executados em sistemas operacionais diferentes, fornecendo serviços para que o aplicativo possa trocar dados de uma maneira baseada em padrões. O middleware fica "no meio" entre os softwares aplicativos que podem estar funcionando em diferentes sistemas operacionais . É semelhante à camada intermediária de uma arquitetura de sistema único de três camadas , exceto pelo fato de ser estendida por vários sistemas ou aplicativos. Os exemplos incluem software EAI , software de telecomunicações, monitores de transações e software de mensagens e filas.

A distinção entre sistema operacional e funcionalidade de middleware é, até certo ponto, arbitrária. Embora a funcionalidade do núcleo do kernel só possa ser fornecida pelo próprio sistema operacional, algumas funcionalidades fornecidas anteriormente pelo middleware vendido separadamente agora estão integradas aos sistemas operacionais. Um exemplo típico é a pilha TCP / IP para telecomunicações, hoje incluída praticamente em todos os sistemas operacionais.

Definições

Software que fornece um link entre aplicativos de software separados. O middleware às vezes é chamado de encanamento porque conecta dois aplicativos e passa dados entre eles. O middleware permite que os dados contidos em um banco de dados sejam acessados ​​por meio de outro. Essa definição se encaixaria na integração de aplicativos empresariais e no software de integração de dados .

ObjectWeb define middleware como: "A camada de software que fica entre o sistema operacional e os aplicativos em cada lado de um sistema de computação distribuído em uma rede."

Origens

Middleware é uma adição relativamente nova ao cenário da computação. Ele ganhou popularidade na década de 1980 como uma solução para o problema de como vincular aplicativos mais recentes a sistemas legados mais antigos, embora o termo estivesse em uso desde 1968. Também facilitou o processamento distribuído , a conexão de vários aplicativos para criar um aplicativo maior, geralmente em uma rede.

Usar

Os serviços de middleware fornecem um conjunto mais funcional de interfaces de programação de aplicativos para permitir que um aplicativo:

  • Localize de forma transparente em toda a rede, proporcionando assim interação com outro serviço ou aplicativo
  • Filtre os dados para torná-los fáceis de usar ou públicos por meio do processo de anonimato para proteção da privacidade (por exemplo)
  • Seja independente dos serviços de rede
  • Seja confiável e sempre disponível
  • Adicione atributos complementares, como semântica

em comparação com o sistema operacional e os serviços de rede.

O middleware oferece algumas vantagens tecnológicas exclusivas para negócios e indústria. Por exemplo, os sistemas de banco de dados tradicionais são geralmente implantados em ambientes fechados onde os usuários acessam o sistema apenas por meio de uma rede restrita ou intranet (por exemplo, uma rede interna de uma empresa). Com o crescimento fenomenal da World Wide Web , os usuários podem acessar virtualmente qualquer banco de dados para o qual tenham os direitos de acesso adequados de qualquer lugar do mundo. O middleware aborda o problema de vários níveis de interoperabilidade entre diferentes estruturas de banco de dados. O middleware facilita o acesso transparente a sistemas legados de gerenciamento de banco de dados (DBMSs) ou aplicativos por meio de um servidor da web, independentemente das características específicas do banco de dados.

As empresas freqüentemente usam aplicativos de middleware para vincular informações de bancos de dados departamentais, como folha de pagamento, vendas e contabilidade, ou bancos de dados armazenados em várias localizações geográficas. Na comunidade de saúde altamente competitiva, os laboratórios fazem uso extensivo de aplicativos de middleware para mineração de dados , backup do sistema de informações do laboratório (LIS) e para combinar sistemas durante fusões de hospitais. O middleware ajuda a preencher a lacuna entre LISs separados em uma rede de saúde recém-formada após a compra de um hospital.

O middleware pode ajudar os desenvolvedores de software a evitar a necessidade de escrever interfaces de programação de aplicativos (API) para cada programa de controle, servindo como uma interface de programação independente para seus aplicativos. Para a operação futura da rede Internet através do monitoramento de tráfego em cenários multi-domínio , o uso de ferramentas mediadoras (middleware) é uma poderosa ajuda, pois permite que operadoras , buscadores e provedores de serviços supervisionem a qualidade do serviço e analisem eventuais falhas nos serviços de telecomunicações .

Por fim, o e-commerce usa middleware para auxiliar na manipulação de transações rápidas e seguras em muitos tipos diferentes de ambientes de computador. Resumindo, o middleware se tornou um elemento crítico em uma ampla gama de setores, graças à sua capacidade de reunir recursos em redes ou plataformas de computação diferentes.

Em 2004, membros da European Broadcasting Union (EBU) realizaram um estudo de Middleware no que diz respeito à integração de sistemas em ambientes de broadcast. Isso envolveu especialistas em engenharia de projeto de sistema de 10 grandes emissoras europeias que trabalharam por um período de 12 meses para entender o efeito de produtos predominantemente baseados em software na produção de mídia e técnicas de projeto de sistema de transmissão. Os relatórios resultantes Tech 3300 e Tech 3300s foram publicados e estão disponíveis gratuitamente no site da EBU.

Tipos

Middleware orientado a mensagens

Middleware orientado a mensagens (MOM) é um middleware em que transações ou notificações de eventos são entregues entre sistemas ou componentes distintos por meio de mensagens, geralmente por meio de um sistema de mensagens corporativo . Com o MOM, as mensagens enviadas ao cliente são coletadas e armazenadas até que sejam acionadas, enquanto o cliente continua com outro processamento.

Mensagens corporativas
Um sistema de mensagens corporativas é um tipo de middleware que facilita a passagem de mensagens entre sistemas ou componentes distintos em formatos padrão, geralmente usando XML , SOAP ou serviços da web . Como parte de um sistema de mensagens corporativo, o software do corretor de mensagens pode enfileirar, duplicar, traduzir e entregar mensagens para sistemas ou componentes distintos em um sistema de mensagens.
Barramento de serviço empresarial
O barramento de serviço corporativo (ESB) é definido pelo Burton Group como "algum tipo de produto de middleware de integração que suporta middleware orientado a mensagens e serviços da Web ".

Middleware inteligente

Intelligent Middleware (IMW) fornece inteligência em tempo real e gerenciamento de eventos por meio de agentes inteligentes . O IMW gerencia o processamento em tempo real de sinais de sensor de alto volume e transforma esses sinais em informações comerciais inteligentes e acionáveis. As informações acionáveis ​​são então entregues em painéis avançados do usuário final para usuários individuais ou enviadas para sistemas dentro ou fora da empresa. Ele é capaz de suportar vários tipos heterogêneos de hardware e software e fornece uma API para interface com sistemas externos. Deve ter uma arquitetura distribuída altamente escalável que incorpore inteligência em toda a rede para transformar dados brutos sistematicamente em conhecimento acionável e relevante. Ele também pode ser empacotado com ferramentas para visualizar e gerenciar operações e construir aplicativos de rede avançados de forma mais eficaz.

Middleware centrado em conteúdo

O middleware centrado em conteúdo oferece uma abstração simples de provedor-consumidor, por meio da qual os aplicativos podem emitir solicitações para conteúdo identificado de forma exclusiva, sem se preocupar com onde ou como ele é obtido. Juno é um exemplo, que permite que os aplicativos gerem solicitações de conteúdo associadas a requisitos de entrega de alto nível. O middleware então adapta a entrega subjacente para acessar o conteúdo das fontes mais adequadas para atender aos requisitos. Portanto, isso é semelhante ao middleware de publicação / assinatura , bem como ao paradigma de rede centrado no conteúdo .

Chamada de procedimento remoto
O middleware de chamada de procedimento remoto permite que um cliente use serviços em execução em sistemas remotos. O processo pode ser síncrono ou assíncrono .
Agente de solicitação de objeto
Com o middleware do object request broker , é possível que os aplicativos enviem objetos e solicitem serviços em um sistema orientado a objetos.
Acesso a dados orientado a SQL
O acesso a dados orientado a SQL é um middleware entre aplicativos e servidores de banco de dados.
Middleware embutido
O middleware integrado fornece serviços de comunicação e interface de integração de software / firmware que opera entre aplicativos integrados, o sistema operacional integrado e aplicativos externos.

Outro

Outras fontes incluem estas classificações adicionais:

Níveis de Integração

Integração de dados

  • Integração de recursos de dados como arquivos e bancos de dados

Integração na nuvem

  • Integração entre vários serviços em nuvem

Integração B2B

  • Integração de recursos de dados e interfaces de parceiros

Integração de aplicativos

  • Integração de aplicativos gerenciados por uma empresa

Vendedores

IBM , Red Hat , Oracle Corporation e Microsoft são alguns dos fornecedores que fornecem software de middleware. Fornecedores como Axway , SAP , TIBCO , Informatica , Objective Interface Systems , Pervasive , ScaleOut Software e webMethods foram fundados especificamente para fornecer soluções de middleware de nicho. Grupos como a Apache Software Foundation , OpenSAF , ObjectWeb Consortium (agora OW2) e OASIS ' AMQP encorajam o desenvolvimento de middleware de código aberto. A arquitetura "Framework" do Microsoft .NET é essencialmente "Middleware" com funções típicas de middleware distribuídas entre os vários produtos, com a maioria das interações entre computadores pelos padrões da indústria, APIs abertas ou licença de software RAND. A Solace fornece middleware em hardware desenvolvido especificamente para implementações que podem experimentar escala. StormMQ fornece Middleware Orientado a Mensagem como um serviço.

Veja também

Referências

links externos