Abstract:
Distributed computing concepts have proliferated with cloud computing concepts in
the past decade. With the evolution in cloud computing, Microservice architecture has
significantly become popular as a new architectural pattern and a software development
architecture. Most enterprise software development has moved their monolithic software
architecture to microservice-based architecture, as it can divide large applications into lightweighted,
distributed components. However, this approach may be subject to certain downsides
as well. With the modern convention, engineers have succeeded in achieving scalability and
maintainability quality attributes and lack the performance attribute in terms of response time.
This is because the microservice architecture has introduced inter-service communication over
the network. The key challenge when developing a microservice-based application is choosing
the correct inter-service communication mechanism to reduce the time taken when calling each
service. This research has taken an experimental methodology to compare and contrast the most
trending inter-service communication mechanisms. Industry-standard benchmark load test is run
to collect quantitative data to evaluate the overall system performance in terms of response time.
The testing observed that gRPC protocol performs well in terms of response time and throughput
compared to the HTTP and Web Socket protocols.