Font Size: a A A

The Design And Implementation Of Basic Components In Microservice Architecture In Tik Tok's Recommendation System

Posted on:2021-01-24Degree:MasterType:Thesis
Country:ChinaCandidate:T LeiFull Text:PDF
GTID:2428330647450843Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of the Internet industry in recent years,the scale of software and applications continues to expand,and the conventional monolithic architecture can no longer cope with it.The microservice architecture is an emerging architectural model.It advocates dividing the application of the monolithic architecture into a set of small services,and the services coordinate with each other,but this increases the complexity of the system.At the same time,the developers need to think about how to deal with the distributed communication problems between services,service instance management problems,and service stability problems.Therefore,in order to solve the common problems in the microservice architecture,the basic components of the microservice architecture came into being.The design and development of Tik Tok's recommendation system is mainly based on C++ and microservice architecture.Therefore,the basic components of the microservice architecture in this thesis are also implemented based on C++.In addition,other key technologies and tools used in the implementation of the basic components include the registration center Consul,the compilation tool Blade,the test framework Gtest,PID control and RPC communication framework Thrift/Fbthrift.This thesis focuses on the degradation component,circuit breaker component,current limiting component,adaptive timeout component and load balancing component in the basic components of the microservice architecture developed based on C++.The main function of the adaptive degradation component,circuit breaker component and current limiting component is to ensure the reliability of requests between services.The role of the load balancing component is to improve the resource utilization of the server.The role of the current limiting component is to ensure the security of the server.Each component is independent of the business system in the form of public tools or independent projects,that is,out of the box,the business parties decide whether to use specific components.At present,this set of basic components has been widely used in the Tik Tok's recommendation system,and more than 20 business projects have used these basic components.These basic components can help the developers of the business projects quickly build a microservice system framework based on C++ development,making the business system more reliable and robust.According to statistical data,the degradation component helped the business system reduce the delay by nearly 10% during the peak period.In addition,the degradation component,the circuit breaker component and the current limiting component helped the business system reach close to "four nines"(the system can be used normally for 99.99% of the total time)reliability.
Keywords/Search Tags:Adaptive Degradation, Circuit Breaker, Current Limiting, Adaptive Timeout, Load Balancing
PDF Full Text Request
Related items