C ++ Distributed Real-time Application Framework (Cpp Distributed Real-time Application Framework) ---- (1): Overview,

Source: Internet
Author: User

C ++ Distributed Real-time Application Framework (Cpp Distributed Real-time Application Framework) ---- (1): Overview,
C ++ Distributed Real-time Application Framework (Cpp Distributed Real-time Application Framework)

In today's wave of "cloud-based" software systems, various frameworks and tools supporting "cloud-based" are emerging. However, most of these ready-made tools are based on JAVA, go, and other languages, all application scenarios are non-real-time systems. However, the Distributed Real-time Application Framework based on the C ++ language and supporting millisecond-level response and high throughput has always been blank in this field. Cpp Distributed Real-time Application Framework (CDRAF) as a result.

We are committed to building CDRAF into a general C ++ distributed real-time system framework, it can serve any business system with high response and throughput requirements, whether it is a game background system or a telecommunications industry system. You only need to make a few changes to the original business code based on CDRAF, you can use the system to easily obtain all the features of the "Distributed Real-Time System", such:

  • High throughput, low latency, diverse modes, stable and reliable communication platforms
  • The new node automatically registers for Internet connection after it is started. The old node does not need to be restarted.
  • The computing node automatically scales up or down dynamically based on the service volume.
  • A single point of failure does not affect the cluster. the faulty node is automatically detected and automatically goes back to the network.
  • Real-time node Performance Statistics, automatically reported
  • Automatic Load Balancing. Different Nodes automatically perform Load Balancing Based on their processing capabilities.
  • Overload protection prevents system congestion or even downtime due to excessive traffic
  • Elegant start/stop, dual-channel message lines ensure no messages are lost during start/stop
  • Phased release, supporting testing nodes and normal business nodes in the same network
  • Provides Restful interfaces for managing cluster nodes to facilitate secondary development of node management.

CDRSF consists of the communication platform, status center, and system management. As shown in:

 

Communication Platform:

➢ Has the communication capability of low latency (millisecond level) and high throughput (200000pps/s level ).

➢ Provides a variety of communication methods (point-to-point, broadcast, distribution, single-channel, etc.) to meet various business needs

Zookeeper fully-configured node communication relationships, completely decoupled from business programs

➢ Real-time performance statistics output, real-time application Monitoring and Management

Status center:

➢ Provides the ability for new nodes to automatically discover and run online, and faulty nodes to automatically detect and return to the network.

➢ Each service node actively reports detailed running status data and monitors the running information of nodes across the network in real time.

The supervisor can issue management commands to various business nodes.

The register and trigger mechanism ensures that all commands and data arrive immediately.

System Management:

➢ Implement independent system management and external system management

Butler's self-managed capabilities include dynamic resizing, node overload protection, and faulty node restart.

External management provides external operations on the system through the RESTful interface.

(For example, elegantly shut down nodes, switch logs, single-number log tracking, container testing, etc)

 

Overall system architecture:

 

 

The communication platform is responsible for communications between all business processes, including inter-process and inter-node communications. SmartMonitor also monitors the heartbeat health status of business processes in real time and collects performance data in real time. SmartAgent reports various data of each node to the status center in real time and receives commands from the status center. SmartService manages the entire cluster process based on the system running status, and also accepts commands from external sources to perform various operations on the system process.

 

To be continued ......

 

Technical Exchange and Cooperation QQ group: 436466587 welcome to discussion

 

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.