Performance Evaluation of Microservices Communication with REST, GraphQL, and gRPC

Authors

  • Muhammad Niswar Hasanuddin University
  • Reza Arisandy Safruddin Hasanuddin University
  • Anugrayani Bustamin Hasanuddin University
  • Iqra Aswad Hasanuddin University

Abstract

Microservice architecture has become the design paradigm for creating scalable and maintainable software sys- tems. Selecting the proper communication protocol in microser- vices is critical to achieving optimal system performance. This study compares the performance of three commonly used API protocols: REST, GraphQL, and gRPC, in microservices ar- chitecture. In this study, we established three microservices implemented in three containers and each microservice contained a Redis and MySQL database. We evaluated the performance of these API protocols using two key performance metrics: response time and CPU Utilization. This study performs two distinct data retrieval: fetching flat data and fetching nested data, with a number of requests ranging from 100 to 500 requests. The experimental results indicate that gRPC has a faster response time, followed by REST and GraphQL. Moreover, GraphQL shows higher CPU Utilization compared to gRPC and REST. The experimental results provide insight for developers and architects seeking to optimize their microservices communication protocols for specific use cases and workloads.

Additional Files

Published

2024-06-20

Issue

Section

Internet Engineering, Web Technology