|
Acadêmico(a): Matheus Heiden |
Título: Gerenciador de web service e organizador de requisições |
|
Introdução: |
Nos últimos anos, com o crescimento da implementação e utilização de aplicações web, criou-se também a necessidade de interfaces de programação de aplicação como Web Services (NASCIMENTO, 2014). Plataformas como Facebook (FACEBOOK, 2018) e Google (GOOGLE, 2018), oferecem Application Programming Interfaces (APIs) através de Web Services, para que desenvolvedores possam criar integrações com as suas aplicações. O interesse na implementação dessas APIs vem crescendo desde 2006 e em janeiro de 2018 foram contabilizadas cerca de 19 mil APIs de plataformas (SANTOS, 2018). Uma API ajuda a expor um serviço ou dados a desenvolvedores de aplicativos, portanto, uma API é uma interface de software para software que define contratos para que aplicações conversem através de uma rede sem interação de um usuário (DE, 2017). Os contratos definidos durante a comunicação têm como base protocolos, podendo também incluir informações como os termos de serviço e acordos de licenciamento para utilização do serviço, bem como preços (DE, 2017). Com o maior interesse de empresas e clientes na integração de aplicações, também cresce a demanda dos servidores web nos quais essas aplicações se encontram. Essa demanda pode causar lentidão ou até indisponibilidade da aplicação. Tarjan (2017, p1, tradução nossa) afirma que “Disponibilidade e confiabilidade são primordiais para todas aplicações web e APIs.”. Para garantir esses elementos é possível escalonar servidores para acomodar o crescimento de demanda e de usuários, mas ainda é necessário garantir que um atuador com alta demanda de requisições não afete acidentalmente ou deliberadamente a disponibilidade da API (TARJAN, 2017). Com isso, tem-se uma ligação direta entre a demanda de requisições a um Web Service e sua disponibilidade, além de que com o crescimento da demanda a necessidade de controlá-la aumenta. Para facilitar esse controle de requisições existem gerenciadores de APIs que possibilitam a análise e gerenciamento de APIs, para conseguir isso tem como funcionalidades o serviço de gateway de APIs e o serviço de estatísticas de API (DE, 2017). A aplicação demonstrada por esse artigo tem como objetivo operar entre o cliente e o Web Service, podendo receber requisições REST e SOAP, que as prioriza, valida e encaminha ao Web Service. Além disso, têm-se como objetivos específicos fornecer um ponto de entrada que recebe requisições e disponibilizar uma interface para o registro de Web Services que terão as requisições gerenciadas, além de disponibilizar uma interface para a definição de prioridade e regras de utilização de requisições. Outro objetivo específico é que para o gerenciamento de requisições é necessário um algoritmo de priorização de requisições e um algoritmo para definição, execução e limitação de requisições. Assim, este artigo apresenta uma aplicação que gerencia a demanda de requisições a Web Services de aplicações, com o objetivo de garantir maior disponibilidade, suportando o protocolo SOAP e a arquitetura RESTful. A aplicação executa requisições categorizando-as e limitando seguindo regras pré-estabelecidas. Dessa forma, o artigo está dividido nas seguintes seções. A seção 2 apresenta a fundamentação teórica. A seção 3 descreve a aplicação e aprofunda seu desenvolvimento. A seção 4 demonstra os resultados obtidos com a utilização da aplicação. Por fim, a seção 5 relata as conclusões dos resultados alcançados em relação aos objetivos definidos. |
|
|