Modelagem de microsserviços e arquiteturas de APIs - CRUZ, Julio da Silva (002, 2021)
A arquitetura em microsserviços propõe maneiras de facilitar o trabalho em equipe em grandes projetos, porém sua implementação requer padrões arquiteturais complexos. Como toda arquitetura ela possui padrões estabelecidos e debatidos na comunidade, uma vez que a utilização da arquitetura independe da tecnologia utilizada para sua construção, possibilitando uso de .Net, Java e outras. As convenções desta arquitetura, quando má interpretadas podem trazer sérios problemas sistêmicos, com a aparição de antipadrões. Nesta arquitetura podemos utilizar modelos de APIs como gRPC, REST, SOAP e GraphQL. A escolha entre os modelos de construção de APIs aplicados na arquitetura de microsserviços traz ao desenvolvedor a necessidade de conhecer esses padrões para saber onde utilizá-los e como utilizá-los, pois cada implementação traz características diferentes que são mais vantajosas em alguns cenários do que em outros. Palavras-chave: Microsserviços; .Net; REST; GraphQL; SOAP

Microservice architecture proposes ways to facilitate teamwork in large projects, but its implementation requires complex architectural patterns. Like any architecture, it has established and debated standards in the community, since the use of the architecture does not depend on the technology used for its construction, enabling the use of .Net, Java and others. The conventions of this architecture, when misinterpreted, can bring serious systemic problems, with the appearance of anti-patterns. In this architecture we can use API models such as gRPC, REST, SOAP and GraphQL. Choosing between the API construction models applied in microservices architecture brings the developer to know these patterns in order to know where to use them and how to use them, as each implementation brings different characteristics that are more advantageous in some scenarios than in others. Keywords: Microservices; .Net; REST; GraphQL; SOAP
Keywords: Sistemas de modelagem; Web sites; Frameworks; Desenvolvimento de software; Projeto de software; Informação e Comunicação