Cargando…

High performance microservice communication technology based on modified remote procedure call

Microservice architecture is a programming method that decomposes a single application into various smaller services and then executes them. However, this approach introduces new challenges in communication between services because of the different data structures and technology types among the mult...

Descripción completa

Detalles Bibliográficos
Autores principales: Zhang, Lei, Pang, Ke, Xu, Jiangtao, Niu, Bingxin
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Nature Publishing Group UK 2023
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10372007/
https://www.ncbi.nlm.nih.gov/pubmed/37495663
http://dx.doi.org/10.1038/s41598-023-39355-4
_version_ 1785078273027342336
author Zhang, Lei
Pang, Ke
Xu, Jiangtao
Niu, Bingxin
author_facet Zhang, Lei
Pang, Ke
Xu, Jiangtao
Niu, Bingxin
author_sort Zhang, Lei
collection PubMed
description Microservice architecture is a programming method that decomposes a single application into various smaller services and then executes them. However, this approach introduces new challenges in communication between services because of the different data structures and technology types among the multiple services. Therefore, interprocess communication (IPC) between services has become one of the important challenges facing microservice architecture. Additionally, the choice of IPC technology is an important decision that can affect the nonfunctional requirements of the entire architecture. To address this problem, this study proposes a microservice communication technology based on remote procedure calls (RPC) called RPCX to improve the communication performance between services. The RPCX communication mechanism based on RPC uses the nonblocking IO communication model and Protobuf data serialization standard method. It identifies RPC communication at the client and server ends using dynamic proxy and annotation configuration technology. We use RPCX and two traditional service communication technologies to conduct performance stress benchmarking and evaluate the performance of RPCX through the time consumed to process the requests and transactions per second (TPS) performance stress indicators. The results show that the performance of RPCX is better than that of the other two technologies under different threads and requests. In this study, we show that RPCX has overall better performance than the other two service communication techniques under different threads and requests.
format Online
Article
Text
id pubmed-10372007
institution National Center for Biotechnology Information
language English
publishDate 2023
publisher Nature Publishing Group UK
record_format MEDLINE/PubMed
spelling pubmed-103720072023-07-28 High performance microservice communication technology based on modified remote procedure call Zhang, Lei Pang, Ke Xu, Jiangtao Niu, Bingxin Sci Rep Article Microservice architecture is a programming method that decomposes a single application into various smaller services and then executes them. However, this approach introduces new challenges in communication between services because of the different data structures and technology types among the multiple services. Therefore, interprocess communication (IPC) between services has become one of the important challenges facing microservice architecture. Additionally, the choice of IPC technology is an important decision that can affect the nonfunctional requirements of the entire architecture. To address this problem, this study proposes a microservice communication technology based on remote procedure calls (RPC) called RPCX to improve the communication performance between services. The RPCX communication mechanism based on RPC uses the nonblocking IO communication model and Protobuf data serialization standard method. It identifies RPC communication at the client and server ends using dynamic proxy and annotation configuration technology. We use RPCX and two traditional service communication technologies to conduct performance stress benchmarking and evaluate the performance of RPCX through the time consumed to process the requests and transactions per second (TPS) performance stress indicators. The results show that the performance of RPCX is better than that of the other two technologies under different threads and requests. In this study, we show that RPCX has overall better performance than the other two service communication techniques under different threads and requests. Nature Publishing Group UK 2023-07-26 /pmc/articles/PMC10372007/ /pubmed/37495663 http://dx.doi.org/10.1038/s41598-023-39355-4 Text en © The Author(s) 2023 https://creativecommons.org/licenses/by/4.0/Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ (https://creativecommons.org/licenses/by/4.0/) .
spellingShingle Article
Zhang, Lei
Pang, Ke
Xu, Jiangtao
Niu, Bingxin
High performance microservice communication technology based on modified remote procedure call
title High performance microservice communication technology based on modified remote procedure call
title_full High performance microservice communication technology based on modified remote procedure call
title_fullStr High performance microservice communication technology based on modified remote procedure call
title_full_unstemmed High performance microservice communication technology based on modified remote procedure call
title_short High performance microservice communication technology based on modified remote procedure call
title_sort high performance microservice communication technology based on modified remote procedure call
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10372007/
https://www.ncbi.nlm.nih.gov/pubmed/37495663
http://dx.doi.org/10.1038/s41598-023-39355-4
work_keys_str_mv AT zhanglei highperformancemicroservicecommunicationtechnologybasedonmodifiedremoteprocedurecall
AT pangke highperformancemicroservicecommunicationtechnologybasedonmodifiedremoteprocedurecall
AT xujiangtao highperformancemicroservicecommunicationtechnologybasedonmodifiedremoteprocedurecall
AT niubingxin highperformancemicroservicecommunicationtechnologybasedonmodifiedremoteprocedurecall