Computer Science ›› 2024, Vol. 51 ›› Issue (6): 346-353.doi: 10.11896/jsjkx.231100125

• Computer Network • Previous Articles     Next Articles

Pre-allocated Capacity Quota Limiting System Based on Microservice

ZHENG Xu1, FAN Hongjie2, LIU Junfei3   

  1. 1 School of Software and Microelectronics,Peking University,Beijing 100871,China
    2 Department of Science and Technology Teaching,China University of Political Science and Law,Beijing 102249,China
    3 National Engineering Research Center for Software Engineering,Peking University,Beijing 100871,China
  • Received:2023-11-19 Revised:2024-03-25 Online:2024-06-15 Published:2024-06-05
  • About author:ZHENG Xu,born in 1993,master.His main research interests include software engineering and microservice.
    FAN Hongjie,born in 1984,Ph.D,associate professor.His main research in-terests include data mining and so on.
  • Supported by:
    Major Special Funds of the Changsha Scientific and Technological Project(kh2202006).

Abstract: In a distributed architecture,rate limiters that exist simultaneously on multiple nodes need to collaborate effectively to achieve the same effect as a monolithic rate limiter.In real-world business scenarios,there is irregular distribution of online requests and high offline business throughput.In such cases,certain critical nodes operating under overload conditions can result in slow response times,leading to increased overall latency in the request chain and even causing sluggish application performance.To address the issues of existing microservice flow limiting,this paper proposes a rate limiting algorithm based on proactive quota updates using pre-allocated quotas.This algorithm adopts a server-initiated broadcast approach where the server can both accept client requests and proactively update the latest results for processing requests on the nodes holding the resource quotas.Flexible allocation algorithms can be utilized during quota allocation at the server end.Estimation of rate limiter quotas involves sliding window pattern to track the number of requests and the allocated resource quotas over a period of time.Additionally,we implement a rate limiting model based on this algorithm.Experimental results demonstrate that the model can promptly respond to quota changes and effectively achieve fairness among nodes.Compared to the Doorman system,the proposed model is better suited for online and offline traffic scenarios and enables more precise rate limiting.

Key words: Quota limiting, Microservice, Token bucket, Push mechanism, Distributed system

CLC Number: 

  • TP391.4
[1]ALSHUQUYRAN N,ALI N,EVANS R.A systematic mapping study in microservice architecture[C]//2016 IEEE 9th International Conference on Service-Oriented Computing and Applications.IEEE,2016:44-51.
[2]SHANG P M,CHEN Y F,YEN C,et al.Using service depen-dency graph to analyze and test microservices[C]//2018 IEEE 42nd Annual Computer Software and Applications Conference.2018:81-86.
[3]PATIL R Y,RAGHA L.A rate limiting mechanism for defending against flooding based distributed denial of service attack[C]//2011 World Congress on Information and Communication Technologies.IEEE,2011:182-186.
[4]VISSER J.YouTube Doorman[EB/OL].[2015-01-03].ht-tps://github.com/youtube/doorman.
[5]TEAM T P.Polaris Mesh[EB/OL].https://polarismesh.cn/zh/doc/%E5%8C%97 %E6%9E%81%E6%98%9F%E6%98%AF%E4%BB%80%E4%B9%88/%E7%AE%80%E4%BB%8B.html.
[6]WANG T,ZHANG W B,XU J W,et al.A survey of fault detection for distributed software systems with statistical monitoring in cloud computing[J].Chinese Journal of Computers,2017,40(2):397-413.
[7]LI S S,RONG G P,GAO Q Y,et al.Optimized dataflow-driven approach for microservices-oriented decomposition[J].Journal of Software,2021,32(5):1284-1301.
[8]ALESSANDRA L,RICARDO T,MARCO T V.Towards atechnique for extracting microservices from monolithic enterprise Systems[C]//2016 Conference on Brazilian Workshop on Software Visualization,Evolution and Maintenance.2016,97-104.
[9]ZHU H Q,MA W B,ZHOU H H,et al.Microservices user requests allocation strategy based on improved multi-objective evo-lutionary algorithms[J].Computer Science,2021,48(10):343-350.
[10]YANG Q L,JIANG L Y.Study on load balancing algorithm of microservices based on machine learning[J].Computer Science,2023,50(5):313-321.
[11]JIANG Z,WANG J L,CAO R H,et al.Method of service decomposition based on microservice architecture[J].Computer Science,2021,48(12):17-23.
[12]BARTKOV M,BOROVIKOV D.Selection of a suitable algorithm for the implementation of rate limiter based on bucket4j[J].International Journal of Online & Biomedical Engineering,2022,16(4):52-63.
[13]AHMADVAND H,DARGAHI T,FOROUTAN F,et al.Bigdata processing at the edge with data skew aware resource allocation[C]//2021 IEEE Conference on Network Function Virtua-lization and Software Defined Networks.2021:81-86.
[1] LIU Xuanyu, ZHANG Shuai, HUO Shumin, SHANG Ke. Microservice Moving Target Defense Strategy Based on Adaptive Genetic Algorithm [J]. Computer Science, 2023, 50(9): 82-89.
[2] YANG Qianlong, JIANG Lingyun. Study on Load Balancing Algorithm of Microservices Based on Machine Learning [J]. Computer Science, 2023, 50(5): 313-321.
[3] HUANG Zhicheng, LIU Xianhui. Microservice Splitting Approach Based on Database Table [J]. Computer Science, 2023, 50(11A): 230200102-7.
[4] FENG Liao-liao, DING Yan, LIU Kun-lin, MA Ke-lin, CHANG Jun-sheng. Research Advance on BFT Consensus Algorithms [J]. Computer Science, 2022, 49(4): 329-339.
[5] TAN Shuang-jie, LIN Bao-jun, LIU Ying-chun, ZHAO Shuai. Load Scheduling Algorithm for Distributed On-board RTs System Based on Machine Learning [J]. Computer Science, 2022, 49(2): 336-341.
[6] LU Yong-chao, WANG Bin-yi, HU Jiang-feng, MU Yang, REN Jun-long. Research on Integrated Electronic Time Synchronization Technology [J]. Computer Science, 2021, 48(6A): 629-632.
[7] LU Yi-fan, CAO Rui-hao, WANG Jun-li, YAN Chun-gang. Method of Encapsulating Procuratorate Affair Services Based on Microservices [J]. Computer Science, 2021, 48(2): 33-40.
[8] WANG Tao, ZHANG Shu-dong, LI An, SHAO Ya-ru, ZHANG Wen-bo. Anomaly Propagation Based Fault Diagnosis for Microservices [J]. Computer Science, 2021, 48(12): 8-16.
[9] JIANG Zheng, WANG Jun-li, CAO Rui-hao, YAN Chun-gang. Method of Service Decomposition Based on Microservice Architecture [J]. Computer Science, 2021, 48(12): 17-23.
[10] ZHU Han-qing, MA Wu-bin, ZHOU Hao-hao, WU Ya-hui, HUANG Hong-bin. Microservices User Requests Allocation Strategy Based on Improved Multi-objective Evolutionary Algorithms [J]. Computer Science, 2021, 48(10): 343-350.
[11] HE Zhi-peng, LI Rui-lin, NIU Bei-fang. Highly Available Elastic Computing Platform for Metagenomics [J]. Computer Science, 2021, 48(1): 326-332.
[12] YU Man, HUANG Kai and ZHANG Xiang. Design of ETC System Based on Microservice Architecture [J]. Computer Science, 2020, 47(6A): 643-647.
[13] WU Wen-jun, YU Xin, PU Yan-jun, WANG Qun-bo, YU Xiao-ming. Development of Complex Service Software in Microservice Era [J]. Computer Science, 2020, 47(12): 11-17.
[14] WU Bin-feng. Design of IoT Middleware Based on Microservices Architecture [J]. Computer Science, 2019, 46(6A): 580-584.
[15] FAN Jian-feng, LI Yi, WU Wen-yuan, FENG Yong. Double Blockchain Based Station Dynamic Loop Information Monitoring System [J]. Computer Science, 2019, 46(12): 155-164.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!