Azevedo, Isabel de Fátima SilvaLandeiro, Mafalda Isabel Ferreira2020-05-042020-05-042019http://hdl.handle.net/10400.22/15946Atualmente os aplicativos da Web têm um papel relevante, com um grande número de aparelhos conectados à Internet e os dados são transmitidos entre plataformas distintas a um ritmo sem precedentes. Vários sistemas e plataformas de tipos diferentes, como web e móveis, exigem que os aplicativos se adaptem de maneira rápida e eficiente às necessidades dos consumidores. Em 2000, o Representation State Transfer (REST) foi apresentado e foi rapidamente adotado pelos desenvolvedores. No entanto, devido ao crescimento dos consumidores e às necessidades distintas, este estilo arquitetónico, na forma como é utilizado, revelou algumas fragilidades relacionadas com o desempenho e flexibilidade das aplicações. Estas são ou podem ser endereçadas com GraphQL. Apesar de ser uma tecnologia recente, já é usada por grandes empresas como Facebook, Netflix, GitHub e PayPal. Recentemente, uma plataforma do INESC TEC, denominada IRIS, enfrentou os mesmos problemas de desempenho e a possibilidade de adoção do GraphQL foi considerada. Várias alternativas com GraphQL foram estudadas e analisadas de forma a verificar se poderiam beneficiar o IRIS em termos de desempenho e flexbilidade. Uma das conclusões deste estudo é que todas as alternativas testadas revelam, no geral, melhores resultados de desempenho, tendo em consideração o tempo de resposta e o tamanho da resposta. No entanto, a utilização de uma alternativa constituída apenas por GraphQL apresenta-se como a melhor solução para melhorar o desempenho e flexibilidade de uma aplicação.Web applications today play a significant role, with a large number of devices connected to the Internet, and data is transmitted across disparate platforms at an unprecedented rate. Many systems and platforms of different types, such as web and mobile, require applications to adapt quickly and efficiently to the needs of consumers. In 2000, the Representation State Transfer (REST) was introduced, and the developers quickly adopted it. However, due to the growth of consumers and the different needs, this architectural style, in the way it is used, revealed some weaknesses related to the performance and flexibility of the applications. These are or can be addressed with GraphQL. Despite being a recent technology, it is already used by big companies like Facebook, Netflix, GitHub, and PayPal. Recently, an INESC TEC platform, called IRIS, faced the same performance problems and the possibility of adopting GraphQL was considered. Several alternatives with GraphQL were studied and analyzed to see if they could benefit IRIS in terms of performance and flexibility. One of the conclusions of this study is that all of the alternatives tested show, overall, better performance results, taking into account response time and response size. However, the use of an alternative consisting solely of GraphQL is the best solution to improve the performance and flexibility of an application.engGraphQLRESTWebservicePerformanceAnalysis of GraphQL performance: a case studymaster thesis202634523