CN112486655A - High-concurrency data processing system and method - Google Patents

High-concurrency data processing system and method Download PDF

Info

Publication number
CN112486655A
CN112486655A CN202011423413.2A CN202011423413A CN112486655A CN 112486655 A CN112486655 A CN 112486655A CN 202011423413 A CN202011423413 A CN 202011423413A CN 112486655 A CN112486655 A CN 112486655A
Authority
CN
China
Prior art keywords
server
message queue
load balancing
data
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011423413.2A
Other languages
Chinese (zh)
Inventor
黄泽鑫
罗晓
王敉佳
汪雄飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gree Electric Appliances Inc of Zhuhai
Original Assignee
Gree Electric Appliances Inc of Zhuhai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gree Electric Appliances Inc of Zhuhai filed Critical Gree Electric Appliances Inc of Zhuhai
Priority to CN202011423413.2A priority Critical patent/CN112486655A/en
Publication of CN112486655A publication Critical patent/CN112486655A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a high-concurrency data processing system and a method, wherein the system comprises a database, a load balancing server, a plurality of message queue servers and a plurality of stream processing servers, wherein the stream processing servers are arranged in one-to-one correspondence with the message queue servers; each message queue server is provided with a subject channel composed of message queues and used for temporarily storing one type of data requests, and the subject channel is used for temporarily storing the data requests distributed by the load balancing server; each stream processing server is used for processing the data request in the theme channel of the message queue server correspondingly arranged by adopting the stream processing technology and storing the processing result into the database. By adopting the technical scheme of the invention, a large amount of high-concurrency data processing requirements can be met.

Description

High-concurrency data processing system and method
Technical Field
The invention relates to the field of servers, in particular to a high-concurrency data processing system and a high-concurrency data processing method.
Background
With the rapid development of the industrial internet, the number of industrial devices is increasing, device data needs to be reported and stored, the frequency of data reporting is increasing, great pressure is applied to a server, and meanwhile, real-time service processing is also accompanied in the data reporting process. In order to improve the processing capability of the server and process and store data in real time in the face of high concurrent reporting and processing of multiple devices, a problem to be solved is first of all, and therefore an architecture with high concurrent processing capability is needed.
Disclosure of Invention
The invention aims to solve the technical problem that the server pressure is high due to the fact that the output processing amount is increased rapidly in the prior art, and provides a high-concurrency data processing system and method.
In an embodiment of the present invention, a highly concurrent data processing system is provided, which includes a database, a load balancing server, a plurality of message queue servers, and a plurality of stream processing servers arranged in one-to-one correspondence with the message queue servers,
the load balancing server is used for distributing an external data request to the corresponding message queue server according to a pre-configured IP mapping relation and a scheduling algorithm;
each message queue server is provided with a subject channel composed of message queues and used for temporarily storing one type of data requests, and the subject channel is used for temporarily storing the data requests distributed by the load balancing server;
each stream processing server is used for processing the data request in the theme channel of the message queue server correspondingly arranged by adopting the stream processing technology and storing the processing result into the database.
In the embodiment of the invention, the load balancing server adopts an Nginx server.
In the embodiment of the invention, the message queue server adopts a Kafka server.
In the embodiment of the invention, the stream processing server adopts a Flink server.
In the embodiment of the invention, the load balancing server sets the message queue servers corresponding to different types of data requests and the IP addresses of the message queue servers in the pre-configured IP mapping relation and scheduling algorithm.
In an embodiment of the present invention, a method for processing high-concurrency data is further provided, where the method includes:
the load balancing server distributes the external data request to the corresponding message queue server according to the pre-configured IP mapping relation and the scheduling algorithm;
the message queue server temporarily stores the data requests distributed by the load balancing server in a subject channel for temporarily storing the data requests of the same type;
the stream processing server obtains the data request in the topic channel of the corresponding message queue server, processes the data request by adopting a stream processing technology, and stores the processing result into a database.
Compared with the prior art, the high-concurrency data processing system and the method thereof are adopted, and the load balancing server distributes the external data request to the corresponding message queue server according to the pre-configured IP mapping relation and the scheduling algorithm; the message queue server temporarily stores the data requests distributed by the load balancing server in a subject channel for temporarily storing the data requests of the same type; the stream processing server obtains the data request in the subject channel of the corresponding message queue server, processes the data request by adopting a stream processing technology, and stores the processing result into the database.
Drawings
FIG. 1 is a block diagram of a highly concurrent data processing system according to an embodiment of the present invention.
FIG. 2 is a schematic diagram of a data processing flow of a highly concurrent data processing system according to an embodiment of the present invention.
Detailed Description
As shown in fig. 1, in the embodiment of the present invention, a highly concurrent data processing system is provided, which includes a database, a load balancing server, a plurality of message queue servers, and a plurality of stream processing servers arranged in one-to-one correspondence with the plurality of message queue servers. The following description will be made separately.
The database is used for storing data. In the embodiment of the invention, the database adopts a MySQL database.
And the load balancing server is used for distributing the external data request to the corresponding message queue server according to the pre-configured IP mapping relation and the scheduling algorithm.
It should be noted that, in the embodiment of the present invention, the load balancing server employs an Nginx server. The Nginx server has the advantages of high speed, good expansibility and high reliability. In the embodiment of the invention, the Nginx server is adopted as the load balancing server, and the Nginx server is used for carrying out the distribution operation of the reverse proxy on the data request by utilizing the high reliability special of the Nginx server. In the pre-configured IP mapping relationship and scheduling algorithm, message queue servers corresponding to different types of data requests and IP addresses of the message queue servers are set, so that the load aggregation server can send the data requests to the corresponding message queue servers according to the types of the data requests.
Each message queue server is provided with a subject channel composed of message queues and used for temporarily storing one type of data requests, and the subject channel is used for temporarily storing the data requests distributed by the load balancing server.
It should be noted that, since the highly concurrent data processing system needs to process a large number of highly concurrent data requests, a plurality of message queue servers need to be provided. In the embodiment of the invention, the message queue server adopts a Kafka server. The Kafka server is a high-throughput, distributed, publish-subscribe schema-based messaging system. In the embodiment of the invention, the Kafka server cluster is arranged to process the high-concurrency data request. The Kafka server serves as a producer to establish topic (topic) channels, each topic channel is used for temporarily storing one type of data request, and the data requests distributed by the load balancing server are temporarily stored in the topic channel.
Each stream processing server is used for processing the data request in the theme channel of the message queue server correspondingly arranged by adopting the stream processing technology and storing the processing result into the database.
It should be noted that, in the embodiment of the present invention, the stream processing server employs a Flink server. The plurality of Flink servers form a Flink server cluster. The Flink servers can not only respond to high-concurrency requests, but also reduce the coupling degree among programs and perform independent business processing on consumed data, each Flink server in the Flink server cluster serves as a consumer, data requests of corresponding main body channels in the Kafka server are appointed for consumption, high-concurrency logic processing is performed according to business requirements, and processed results are stored in the MySQL database to provide subsequent API requirements.
The configuration process of the high concurrency data processing system is as follows:
the first step is as follows: building a Kafka server cluster, selecting a plurality of computers to install Kafka server software, and configuring the IP of each Kafka server;
the second step is that: building a Nginx server, selecting a machine to install Nginx server software, modifying a configuration file, configuring a mapping relation according to the IP of each Kafka server, and distributing a request to the corresponding Kafka server according to the mapping relation and a scheduling algorithm when the Nginx server obtains the request sent by the equipment;
the third step: building a Flink server cluster, selecting a plurality of computers to build the Flink servers, configuring the stream processing service in each Flink server, and enabling each stream processing service to point to a corresponding theme channel in one Kafka server;
and step four, installing a MySQL database, and associating each Flink server with the MySQL database to realize data transmission.
As shown in fig. 2, the data processing procedure of the highly concurrent data processing system includes:
the load balancing server acquires an external data request;
the load balancing server distributes the external data request to the corresponding message queue server according to the pre-configured IP mapping relation and the scheduling algorithm;
the message queue server temporarily stores the data requests distributed by the load balancing server in a subject channel for temporarily storing the data requests of the same type;
the stream processing server obtains the data request in the topic channel of the corresponding message queue server, processes the data request by adopting a stream processing technology, and stores the processing result into a database.
In summary, with the high-concurrency data processing system and method of the present invention, the load balancing server distributes the external data request to the corresponding message queue server according to the pre-configured IP mapping relationship and scheduling algorithm; the message queue server temporarily stores the data requests distributed by the load balancing server in a subject channel for temporarily storing the data requests of the same type; the stream processing server obtains the data request in the subject channel of the corresponding message queue server, processes the data request by adopting a stream processing technology, and stores the processing result into the database.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents and improvements made within the spirit and principle of the present invention are intended to be included within the scope of the present invention.

Claims (10)

1. A high concurrency data processing system is characterized by comprising a database, a load balancing server, a plurality of message queue servers and a plurality of stream processing servers which are arranged in one-to-one correspondence with the message queue servers,
the load balancing server is used for distributing an external data request to the corresponding message queue server according to a pre-configured IP mapping relation and a scheduling algorithm;
each message queue server is provided with a subject channel composed of message queues and used for temporarily storing one type of data requests, and the subject channel is used for temporarily storing the data requests distributed by the load balancing server;
each stream processing server is used for processing the data request in the theme channel of the message queue server correspondingly arranged by adopting the stream processing technology and storing the processing result into the database.
2. The highly concurrent data processing system according to claim 1, wherein the load balancing server employs a Nginx server.
3. The highly concurrent data processing system according to claim 1, wherein the message queue server employs a Kafka server.
4. The highly concurrent data processing system according to claim 1, wherein the stream processing server employs a Flink server.
5. The system according to claim 1, wherein the load balancing server sets message queue servers corresponding to different types of data requests and IP addresses of the message queue servers in the pre-configured IP mapping relationship and scheduling algorithm.
6. A high concurrency data processing method is characterized by comprising the following steps:
the load balancing server distributes the external data request to the corresponding message queue server according to the pre-configured IP mapping relation and the scheduling algorithm;
the message queue server temporarily stores the data requests distributed by the load balancing server in a subject channel for temporarily storing the data requests of the same type;
the stream processing server obtains the data request in the topic channel of the corresponding message queue server, processes the data request by adopting a stream processing technology, and stores the processing result into a database.
7. The method for highly concurrent data processing according to claim 6, wherein the load balancing server employs a Nginx server.
8. The highly concurrent data processing method according to claim 6, wherein the message queue server employs a Kafka server.
9. The highly concurrent data processing method according to claim 6, wherein the stream processing server employs a Flink server.
10. The method according to claim 6, wherein the load balancing server sets message queue servers corresponding to different types of data requests and IP addresses of the message queue servers in the pre-configured IP mapping relationship and scheduling algorithm.
CN202011423413.2A 2020-12-08 2020-12-08 High-concurrency data processing system and method Pending CN112486655A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011423413.2A CN112486655A (en) 2020-12-08 2020-12-08 High-concurrency data processing system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011423413.2A CN112486655A (en) 2020-12-08 2020-12-08 High-concurrency data processing system and method

Publications (1)

Publication Number Publication Date
CN112486655A true CN112486655A (en) 2021-03-12

Family

ID=74940582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011423413.2A Pending CN112486655A (en) 2020-12-08 2020-12-08 High-concurrency data processing system and method

Country Status (1)

Country Link
CN (1) CN112486655A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113691611A (en) * 2021-08-23 2021-11-23 湖南大学 Block chain distributed high-concurrency transaction processing method, system, equipment and storage medium
CN114095502A (en) * 2021-10-08 2022-02-25 浙江吉利控股集团有限公司 Service processing method, system, device and medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450618A (en) * 2014-09-26 2016-03-30 Tcl集团股份有限公司 Operation method and operation system of big data process through API (Application Programming Interface) server
US20190095992A1 (en) * 2017-09-24 2019-03-28 Annie Mafotsing Soh Method and system to facilitate decentralized money services software as a service
CN110365644A (en) * 2019-06-05 2019-10-22 华南理工大学 A method of building internet of things equipment high-performance monitoring platform

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450618A (en) * 2014-09-26 2016-03-30 Tcl集团股份有限公司 Operation method and operation system of big data process through API (Application Programming Interface) server
US20190095992A1 (en) * 2017-09-24 2019-03-28 Annie Mafotsing Soh Method and system to facilitate decentralized money services software as a service
CN110365644A (en) * 2019-06-05 2019-10-22 华南理工大学 A method of building internet of things equipment high-performance monitoring platform

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
余宣杰等: "《银行大数据应用》", 31 August 2019, 机械工业出版社, pages: 59 - 60 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113691611A (en) * 2021-08-23 2021-11-23 湖南大学 Block chain distributed high-concurrency transaction processing method, system, equipment and storage medium
CN114095502A (en) * 2021-10-08 2022-02-25 浙江吉利控股集团有限公司 Service processing method, system, device and medium
CN114095502B (en) * 2021-10-08 2023-11-03 浙江吉利控股集团有限公司 Service processing method, system, device and medium

Similar Documents

Publication Publication Date Title
CN110677277B (en) Data processing method, device, server and computer readable storage medium
CN112486648A (en) Task scheduling method, device, system, electronic equipment and storage medium
CN114270344A (en) Messaging platform for delivering real-time messages
CN112486655A (en) High-concurrency data processing system and method
CN106155811B (en) Resource service device, resource scheduling method and device
CN105450618A (en) Operation method and operation system of big data process through API (Application Programming Interface) server
CN107172187A (en) A kind of SiteServer LBS and method
TWI786527B (en) User code operation method of programming platform, electronic equipment and computer-readable storage medium
CN105183299A (en) Human-computer interface service processing system and method
CN105471700B (en) A kind of methods, devices and systems of Message Processing
CN108304236B (en) User interface refreshing method based on message subscription under cloud platform
CN110300188A (en) Data transmission system, method and apparatus
US20150358249A1 (en) Communicating data in flows between first and second computers over a network
CN103338156B (en) A kind of name pipeline server concurrent communication method based on thread pool
Guo Aggregating uncertain incast transfers in BCube-like data centers
CN108259605B (en) Data calling system and method based on multiple data centers
CN111711675B (en) Solution for concurrent message transmission in local area network
TWI433517B (en) Method and apparatus of processing sip messages based on multiple cores
CN115378937A (en) Distributed concurrency method, device and equipment for tasks and readable storage medium
CN111683140B (en) Method and apparatus for distributing messages
CN110018782A (en) A kind of data read/write method and relevant apparatus
Aksyonov et al. Perspectives of modeling in metallurgical production (WIP)
CN102999390A (en) Rear-end resource control method and device under cloud computing environment
CN114490026A (en) Message consumption optimization method and terminal
CN105323225B (en) The interactive correspondence protocol fitting method and system of cross-terminal

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination