Arquitetura serverless baseada em eventos para aplicações WEB utilizando a AWS

Carregando...
Imagem de Miniatura

Data

2019

Tipo de documento

Monografia

Título da Revista

ISSN da Revista

Título de Volume

Área do conhecimento

Ciências Exatas e da Terra

Modalidade de acesso

Acesso aberto

Editora

Autores

Fontana, Neri Burato Bez
Zanelatto, Alexandre Davi

Orientador

Ceci, Flávio

Coorientador

Resumo

Technological developments are increasingly impacting on web development and every day we see new startups with innovative business models and rapid growth. To meet this growth and stay competitive, companies have started to build new applications, and / or migrate their monolithic architecture to a microservice architecture. The medium- or long-term microservice architecture ends up becoming a costly and highly complex management standard, so that in some cases they become big services, losing the benefits of the architecture. Serverless architecture has come to put an end to the complexity of server management, so the developer doesn't have to worry about most aspects of the infrastructure on which your application will run. While this architecture offers increased scalability, flexibility, reduced release time, and reduced cost, it helps developers devote their primary functions, delivering much more software over a period of time. Thus, this monograph aims to present a proposal of an eventless server-based architecture for the development of a web application using FaaS (Function as a Service) and AWS (Amazon Web Services). The methodological steps of this monograph are characterized by modeling the proposed architecture, applying the proposed architecture in a web system and evaluating the choice with the creation and application of a form. For the development was created a to-do list application that communicates with the developed functions demonstrating the proposed architecture. Based on this development and the criteria addressed, it was possible to create a web application using a serverless architecture and present its positive and negative points. From this conclusion, it is raised for future work the need to apply a layer of security on HTTPS calls, perform load tests, implement integration tests and define a continuous delivery pipeline and deploy to the functions. largest deployment.
A evolução tecnológica está cada vez mais impactante no desenvolvimento web e todo dia vemos nascer novas startups com modelos de negócios inovadores e crescimento acelerado. Para suprir esse crescimento e se manter na competição as empresas passaram a construir novas aplicações, e/ou migrar sua arquitetura monolítica para uma arquitetura de microsserviços. A arquitetura de microsserviços a médio ou longo prazo, acaba se tornando um padrão de grande custo e alta complexidade de gerenciamento, de forma que em alguns casos acabam se tornando grandes serviços perdendo os benefícios da arquitetura. A arquitetura Serverless veio para acabar com a complexidade do gerenciamento de servidores, com ela o desenvolvedor não precisa se preocupar com a maioria dos aspectos da infraestrutura em que sua aplicação será executada. Ao mesmo tempo que essa arquitetura oferece maior escalabilidade, flexibilidade, diminuição no tempo de liberação de versões e custo reduzido, ela ajuda os desenvolvedores a entregar muito mais software em um mesmo período de tempo. Com isso, esta monografia tem o objetivo de apresentar uma proposta de uma arquitetura serverless baseada em eventos para o desenvolvimento de uma aplicação web fazendo o uso de FaaS (Function as a Service) e da AWS (Amazon Web Services). As etapas metodológicas desta monografia se caracterizam a modelar a arquitetura proposta, aplicar a arquitetura proposta em um sistema web e avaliar a escolha com a criação e a aplicação de um formulário. Para o desenvolvimento foi criado uma aplicação de lista de afazeres que se comunica com as funções desenvolvidas demonstrando a arquitetura proposta. Com base neste desenvolvimento e nos critérios abordados, foi possível criar uma aplicação web utilizando uma arquitetura serverless e apresentar os pontos positivos e negativos da mesma. A partir desta conclusão, é levantado, para trabalhos futuros, a necessidade de aplicar uma camada de segurança nas chamadas HTTPS, executar testes de carga, implementar testes de integração e definir uma pipeline de entrega e deploy contínuo para as funções, obtendo uma facilidade ainda maior de implantação.

Palavras-chave

Software, Arquitetura de software, Serverless, Cloud, Desenvolvimento, AWS, WEB

Citação