/
Tencent's end user stories

Tencent's end user stories

******************************

Published Blog

Akraino Edge Stack Use Cases: Tencent’s End User Story


By LF Edge March 2, 2020

https://www.lfedge.org/2020/03/02/akraino-edge-stack-use-cases-tencents-end-user-story/

Original Content


xin qiu , Tencent; Mark Shan, Tencent ; yarg yang (Deactivated)Bart Dong


Tencent has been deploying Tars on Connected Vehicle Blueprint and validating on IEC Type 4: AR/VR oriented Edge Stack for Integrated Edge Cloud (IEC) Blueprint Family.

Tars Microservice Framework

Tars is a key component for Connected Vehicle Blueprint and IEC Type 4 AR/VR Blueprint.  So I introduce Tars Framework first prior to diving into the Akraino Blueprint.  

Tars framework in general 

Tars is a high-performance microservice framework, which supports C++, Java, Nodejs as well as PHP for now. Tars framework offers a set of efficient solutions for development, test, and maintenance. Tars framework integrates extensible components for encoding/decoding, high-performance RPC protocol, name service, monitor, statistics and configuration.  Tars framework will be a great help for reliable distributed application development.

Tars framework has been used in Tencent since 2008. Nowadays it has already been used by hundreds of applications in Tencent, services developed on the Tars Framework run on 16 000 machines. The applications include but not limited to social networks, gaming, video,  financial, telecom, education. 

Tars architecture  

The following picture depicts Tars' architecture.  Tars can be deployed in multiple environments, including bare metal,  virtual machines as well as the container. 

In terms of RPC, Tars supports Tars, Protocol Buffer, TUP, SSL, HTTP1/2. The customers can select any RPC protocol based on the application's requirement.

Beyond  RPC call, Tars supports multiple languages and microservice governance functions, including Service Register/Discovery, Load Balance, Area Perception, Flow Control, Set Mode, Tracing and so on.



Tars Optimization for edge

To address the requirements of time-critical Application on the edge, some optimizations are itemized below:

  • High-Performance RPC:   Tars Framework supports a high-performance RPC Protocol, called Tars Protocol.   To improve the performance, the Tars protocol re-design a brand new RPC protocol and make the transfer between "request" and "Binary stream" more efficiently. In terms of the detail of Tars protocol, refer to the Tars.h file in the https://github.com/TarsCloud/Tars
  • Lightweight framework
    1. To make Tars can be well deployed on the edge computing platform, we make the framework pluggable. The customer plugin the pluggable components when we really need it. Unnecessary components can be avoided.
    2. Rewrite some functions(like scale-out, monitor and so on) to reduce CPU consumption. 
    3. Orchestrate no-urgent functions(like monitor data calculation and so on) from edge to DC(or higher level edge). Reduce resource consumption.

For more detail information for Tars, refer to https://github.com/TarsCloud/Tars/blob/master/Introduction.md.


Connect Ve