CN110912830A - Method and device for transmitting data - Google Patents

Method and device for transmitting data Download PDF

Info

Publication number
CN110912830A
CN110912830A CN201811079765.3A CN201811079765A CN110912830A CN 110912830 A CN110912830 A CN 110912830A CN 201811079765 A CN201811079765 A CN 201811079765A CN 110912830 A CN110912830 A CN 110912830A
Authority
CN
China
Prior art keywords
data
sent
sending
terminal
preset
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.)
Granted
Application number
CN201811079765.3A
Other languages
Chinese (zh)
Other versions
CN110912830B (en
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.)
Hangzhou Hikvision System Technology Co Ltd
Original Assignee
Hangzhou Hikvision System Technology Co Ltd
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 Hangzhou Hikvision System Technology Co Ltd filed Critical Hangzhou Hikvision System Technology Co Ltd
Priority to CN201811079765.3A priority Critical patent/CN110912830B/en
Publication of CN110912830A publication Critical patent/CN110912830A/en
Application granted granted Critical
Publication of CN110912830B publication Critical patent/CN110912830B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The disclosure provides a method and a device for transmitting data, and belongs to the technical field of communication. The method comprises the following steps: acquiring data to be sent; adding the data to be sent into a sending queue; and when the preset sending period is reached, selecting data with the quantity not more than a first preset quantity in the sending queue according to the adding time sequence, and sending the data to a data receiving end. By adopting the method and the device, the condition that the data receiving end is down due to the fact that a large amount of data are processed can be avoided, and the normal operation of the data receiving end is ensured.

Description

Method and device for transmitting data
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a method and an apparatus for transmitting data.
Background
The data sending end may send data to the data receiving end, where the data sending end may be a terminal that performs some services, for example, may be a monitoring device with a monitoring function, and the data receiving end may be a terminal or a server that is responsible for transferring or processing data.
In implementing the present disclosure, the inventors found that the related art has at least the following problems:
when a data transmitting end suddenly transmits a large amount of data to a data receiving end, the data receiving end needs to process the large amount of data, and then the data receiving end is down.
Disclosure of Invention
The embodiment of the disclosure provides a method and a device for transmitting data, which are used for solving the problems of the related art. The technical scheme is as follows:
in a first aspect, according to an embodiment of the present disclosure, there is provided a method for transmitting data, the method including:
acquiring data to be sent;
adding the data to be sent into a sending queue;
and when the preset sending period is reached, selecting data with the quantity not more than a first preset quantity in the sending queue according to the adding time sequence, and sending the data to a data receiving end.
Optionally, the adding the data to be sent to a sending queue includes:
and if the type information of the data to be sent is detected to be matched with the type information stored in advance, adding the data to be sent into a sending queue.
Optionally, if it is detected that the type information of the data to be sent matches with pre-stored type information, adding the data to be sent to a sending queue, including:
and if the type information of the data to be sent is detected to be matched with the pre-stored type information and the data to be sent is not empty, adding the data to be sent into a sending queue.
Optionally, the acquiring data to be sent includes:
acquiring original data;
if the data volume of the original data is larger than a preset threshold value, segmenting the original data to obtain a plurality of data to be sent;
and if the data volume of the original data is not larger than a preset threshold value, determining the original data as data to be sent.
In a second aspect, according to an embodiment of the present disclosure, there is provided a method for transmitting data, the method including:
receiving data to be processed;
adding the data to be processed into a processing queue;
and when the preset selection period is reached, selecting data not more than a second preset number from the processing queue according to the adding time sequence, and processing the data.
Optionally, the receiving the data to be processed includes:
when a preset receiving period is reached, sending a data acquisition request to a data sending end;
and receiving the data to be processed sent by the data sending end.
In a third aspect, according to an embodiment of the present disclosure, there is provided an apparatus for transmitting data, the apparatus including:
the acquisition module is used for acquiring data to be transmitted;
the adding module is used for adding the data to be sent to a sending queue;
and the sending module is used for selecting data not greater than a first preset quantity from the sending queue according to the adding time sequence when a preset sending period is reached, and sending the data to the data receiving end.
Optionally, the adding module is specifically configured to:
and if the type information of the data to be sent is detected to be matched with the type information stored in advance, adding the data to be sent into a sending queue.
Optionally, the adding module is specifically configured to:
and if the type information of the data to be sent is detected to be matched with the pre-stored type information and the data to be sent is not empty, adding the data to be sent into a sending queue.
Optionally, the obtaining module includes:
an acquisition unit configured to acquire original data;
the judging unit is used for segmenting the original data to obtain a plurality of data to be sent if the data volume of the original data is larger than a preset threshold value; and if the data volume of the original data is not larger than a preset threshold value, determining the original data as data to be sent.
In a fourth aspect, according to an embodiment of the present disclosure, there is provided an apparatus for transmitting data, the apparatus including:
the receiving module is used for receiving data to be processed;
the adding module is used for adding the data to be processed into a processing queue;
and the processing module is used for selecting data not greater than a second preset quantity from the processing queue according to the adding time sequence and processing the data when a preset selecting period is reached.
Optionally, the receiving module includes:
the sending unit is used for sending a data obtaining request to the data sending end when a preset receiving period is reached;
and the receiving unit is used for receiving the data to be processed sent by the data sending end.
In a fifth aspect, according to an embodiment of the present disclosure, there is provided a system for transmitting data, the system including a first terminal, a second terminal, and a server, wherein:
the first terminal is used for acquiring data to be sent, adding the data to be sent into a sending queue, and when a preset sending period is reached, selecting data with the quantity not greater than a first preset quantity in the sending queue according to an adding time sequence and sending the data to the server;
the server is used for storing the data sent by the first terminal, and sending the data to the second terminal when receiving a data acquisition request sent by the second terminal;
and the second terminal is used for sending a data acquisition request to the server when a preset receiving period is reached, receiving data sent by the server as to-be-processed data, adding the to-be-processed data into a processing queue, and selecting data with the quantity not greater than a second preset quantity from the processing queue according to the adding time sequence for processing when the preset selecting period is reached.
In a sixth aspect, according to an embodiment of the present disclosure, there is provided a computer device, including a processor, a communication interface, a memory, and a communication bus, where the processor, the communication interface, and the memory complete communication with each other through the bus; a memory for storing a computer program; a processor configured to execute the program stored in the memory to implement the method steps of the first aspect or the second aspect.
In a seventh aspect, according to an embodiment of the present disclosure, a computer-readable storage medium is provided, in which a computer program is stored, and the computer program, when executed by a processor, implements the method steps of the first or second aspect.
The technical scheme provided by the embodiment of the invention has the beneficial effects that at least:
in the embodiment of the present disclosure, when the data sending end uses the above method to transmit data to the data receiving end, after the data to be sent is obtained, the data to be sent is added to the sending queue, and then the data not greater than the first preset number is periodically selected from the sending queue according to the adding time sequence and sent to the data receiving end. Therefore, by controlling the period of sending data to the data receiving end and the quantity of the data sent each time, the data receiving end can be effectively prevented from suddenly receiving a large amount of data, so that the condition that the data receiving end goes down due to the fact that the data receiving end processes a large amount of data is avoided, and the normal operation of the data receiving end is guaranteed.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present disclosure, and it is obvious for those skilled in the art to obtain other drawings based on the drawings without creative efforts.
Fig. 1 is a schematic flow chart of a method for transmitting data according to an embodiment of the present disclosure;
fig. 2 is a schematic flow chart of a method for transmitting data according to an embodiment of the present disclosure;
fig. 3 is a schematic structural diagram of an apparatus for transmitting data according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of an apparatus for transmitting data according to an embodiment of the present disclosure;
fig. 5 is a schematic structural diagram of an apparatus for transmitting data according to an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of an apparatus for transmitting data according to an embodiment of the present disclosure;
fig. 7 is a schematic structural diagram of a system for transmitting data according to an embodiment of the present disclosure;
fig. 8 is a schematic structural diagram of an apparatus for transmitting data according to an embodiment of the present disclosure.
Detailed Description
To make the objects, technical solutions and advantages of the present disclosure more apparent, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
The embodiment of the present disclosure provides a method for transmitting data, which may be implemented when at least two devices are mutually matched, for example, when a data transmitting end and a data receiving end are mutually matched, where the data transmitting end and the data receiving end may be a terminal or a server. The data transmission process may be that the data sending end sends data to the data receiving end, and the data receiving end executes processing after receiving the data. When a plurality of data sending terminals send a large amount of data to a data receiving terminal, in order to improve data transmission efficiency and ensure that a large amount of data can be processed by the data receiving terminal, the plurality of data sending terminals may issue the data in a terminal or a server, and the data receiving terminal acquires the data from the terminal or the server. When the method is applied in the scene, two processes are provided, one is a process of sending data, and the other is a process of receiving data.
In order to facilitate introduction, a data sending end in a data sending process is not marked as a first terminal, and a data receiving end is marked as a server. The server may be a server of a Kafka platform, which is an open source streaming platform that can accept any data.
As shown in fig. 1, a schematic flow chart of the first terminal sending data to the server is as follows:
in step 101, a data sending end obtains data to be sent.
The first terminal is a main body for executing and acquiring data to be transmitted, and the specific executing main body may be a middleware integrated on the first terminal, where the middleware is an independent system software or service program and is located between a hardware operating system and application software. The middleware may only have a program for transmitting data or may have a program for transmitting data and a program for receiving data at the same time, for example, the programs for transmitting data and receiving data are compressed together in the form of jar packets, and since the data for transmission or reception may be data transmitted to the Kafka platform, the jar packet of the middleware may be named "mta _ kafkaSdk", and integrated in the first terminal, and when data needs to be transmitted, the program for transmitting data is used, and when data needs to be received, the program for receiving data is used.
When the middleware of the first terminal needs to send data, for example, when the middleware of the first terminal sends data to the Kafka platform, the interface for sending data can be called to establish connection with the Kafka platform. The interface for transmitting data may be encapsulated in the jar packet of the above-mentioned "Mta _ kafkatkasdk" named "Mta _ kafkclientsend". The middleware of the first terminal can also receive data from the Kafka platform, when the middleware of the first terminal receives the data from the Kafka platform, the middleware of the first terminal can call an interface for receiving the data to establish connection with the Kafka platform, and the interface for receiving the data can be encapsulated in the jar packet of the Mta _ Kafka SdkClientReceive named as Mta _ kafk. Further, the first terminal is connected to the Kafka platform in the jar packet of "mta _ kafkaSdk".
The data to be sent may be data generated by the first terminal, or may also be data sent by a third terminal electrically connected to the first terminal, and for convenience, an example may be performed by using the data generated by the first terminal.
In a possible embodiment, the information carried by the data is mainly related to the scenario to which the method is applied, for example, the method may be applied in a monitoring system, and then the data to be sent may be an alarm message, for example, indicating fire alarm information, water alarm information, or theft alarm information. For example, when the application layer of the first terminal detects a trigger event, data corresponding to the trigger event may be generated according to a pre-stored data generation protocol, where a header of the data may have a character string indicating type information of the data. After the application layer of the first terminal generates data, the data may be sent to the middleware, and the data obtained by the middleware from the application layer is the data to be sent.
In step 102, the data transmitting end adds data to be transmitted to a transmission queue.
The queue length of the transmission queue may have a length threshold or may not have a length threshold, and is an infinite queue.
For example, if the data processing capacity of the data receiving end is large, for example, the data receiving end is a server, the length of the sending queue may not be limited, such as an infinite queue. Because the data processing capacity of the data receiving end is very large, for example, the data processing speed of the data receiving end is much higher than the data generating speed of a single data sending end, and thus, excessive data cannot be retained in the sending queue of each data sending end.
For another example, if the data processing capacity of the data receiving end is limited and the storage space of the data transmitting end is limited, the queue length of the transmission queue may have a length threshold. Correspondingly, the data sending end judges the relation between the current length of the sending queue and a preset length threshold value, and if the current length of the sending queue is smaller than the preset length threshold value, the data to be sent is added into the sending queue; and if the data sending end judges that the current length of the sending queue is equal to the preset length threshold, releasing the data to be sent. For example, if the middleware of the first terminal determines that the current length of the transmission queue is equal to the preset length threshold, the data to be transmitted is released, and the information that the transmission queue is full is fed back to the application layer of the first terminal, and after receiving the feedback information, the application layer may generate the data again and transmit the data to the middleware until the middleware adds the data to the transmission queue. Therefore, the preset length threshold of the transmission queue can be determined according to the storage space of the data transmitting end and the data processing capacity of the data receiving end.
In step 103, when the preset sending period is reached, the data sending end selects data not greater than the first preset amount from the sending queue according to the adding time sequence, and sends the data to the data receiving end.
The preset sending period and the first preset number are determined by technicians according to the processing capacity of the data receiving end, and can be determined by multiple tests and theoretical calculation according to the processing capacity of a server of the Kafka platform, for example, and the preset sending period and the first preset number are used for preventing a large amount of data from flooding into the data receiving end to cause downtime of the data receiving end.
In this way, when the preset sending period is reached, the middleware of the first terminal may select, in the sending queue, data not greater than the first preset number in the adding time sequence, for example, select 10 data from the sending queue, and send the 10 data to the server.
Based on the above, after the first terminal obtains the data to be sent, the data to be sent is added to the sending queue, and then the data not greater than the first preset number is periodically selected from the sending queue according to the adding time sequence and sent to the server. In this way, even if a plurality of first terminals transmit data to the server at the same time and each first terminal transmits at least one piece of data, each first terminal periodically selects data not greater than a first preset number in the transmission queue according to the adding time sequence and transmits the data to the server. Furthermore, the server can be prevented from suddenly receiving a large amount of data, so that the downtime of the server is avoided, and the normal operation of the server is ensured.
In one possible implementation, where the server is a server of a Kafka platform, the Kafka platform is an open source streaming platform that can receive any data without verifying the type information, content information, and the like of the data. That is, as long as the terminal is connected to the Kafka platform, any data can be sent to the Kafka platform, in this case, the server will likely receive data to which the terminal does not subscribe, that is, no terminal will obtain the data from the server, and the data may be referred to as useless data, and then the useless data will affect the amount of useful data sent from the first terminal to the server, where the useful data is data to which the terminal subscribes, and such data is stored in the server and is pulled by the terminal from the server.
In order to solve the above problem, after the data sending end obtains the data to be sent, the data sending end may verify the type information of the data, and correspondingly, if the data sending end detects that the type information of the data to be sent matches with the type information stored in advance, the data to be sent is added to the sending queue.
The pre-stored type information can be stored in the data sending end in the form of a form, and the form can list various types of information, for example, the method is applied to a monitoring system, and the form can have type information representing fire alarm, theft alarm, water alarm and the like.
In a possible implementation, since the application layer of the first terminal stores the character string carrying the type information in the header of the data when generating the data, the middleware of the first terminal can extract the character string representing the type information from the data to be transmitted after acquiring the data to be transmitted. If the extracted string matches one of several pre-stored strings, the data may be added to the transmit queue. If the character string extracted by the middleware from the header of the data to be transmitted is not among several character strings stored in advance, the middleware can release the data corresponding to the character string.
Therefore, the first terminal verifies the type information of the data before sending the data to the server, and the data of which the type information is not matched with the pre-stored type information can be filtered out, so that the quantity of the data sent to the server by the first terminal can be reduced. The data type information is verified, and the data carrying the virus information can be prevented from being sent to the server to damage the server. This is because the attack terminal that sends the virus information does not know the type information of the data to be sent, and therefore the type information of the data generated by the attack terminal cannot be matched with the type information that is stored in advance with a high probability, and further, the middleware of the first terminal can filter the data of the type information, and further, the server can be protected.
Optionally, in order to avoid that the data sending end sends data whose content is empty to the outside, the corresponding processing may be that the data sending end detects that the type information of the data to be sent matches with the pre-stored type information, and the data to be sent is not empty, and then the data to be sent is added to the sending queue.
In a possible implementation, the data sending end verifies the content of the data, which may be to verify whether a message of the data is empty, for example, after the middleware of the first terminal obtains the data to be sent, a character string may be first extracted from a header of the data to be sent, if the character string is one of several character strings stored in advance, then, whether the message of the data is empty is verified, and if the character string is not empty, the data is added to the sending queue. Therefore, the data sending end firstly verifies the type information of the data once, and then verifies the content of the data once on the basis that the type information meets the requirement, so that the data with the type information not meeting the requirement, the data with the type information meeting the requirement but with empty content and the data with the type information not meeting the requirement and with empty content can be completely filtered, and the data can be useless data, thereby being beneficial to preventing a data receiving end from receiving and processing the useless data.
Optionally, if the length of the data to be sent is too long, a situation of data loss is easily caused in the sending process, and in order to avoid the situation, corresponding processing may be to verify the length of the original data after the data sending end obtains the data (which is not marked as the original data), and if the data amount of the original data is greater than a preset threshold, segment the original data to obtain a plurality of data to be sent; and if the data quantity of the original data is not larger than a preset threshold value, determining the original data as the data to be sent.
In a possible implementation process, after acquiring original data, a middleware of a first terminal verifies the length of the original data, if the data amount of the original data is greater than a preset threshold, information that the data amount of the original data is greater than the preset threshold is fed back to an application layer, after receiving the feedback information, the application layer segments the original data to obtain a plurality of data and sends the plurality of data to the middleware, and after the middleware obtains a plurality of data to be sent, the plurality of data to be sent are added to a sending queue. And if the middleware detects that the data volume of the original data is not larger than a preset threshold value, directly determining the original data as the data to be sent and adding the data to a sending queue.
In a possible application, the process related to sending data may be performed by using the method, specifically, after a data sending end acquires data to be sent, the type information of the data may be verified first, if the type information of the data matches with pre-stored type information, it is further verified whether the content of the data is empty, if the content of the data is not empty, the length of the data is further verified, and if the length of the data is not greater than a preset threshold, the data is added to a sending queue, where the verification may not be limited by timing sequence. And then, when the preset sending period is reached, selecting data with the quantity not more than the first preset quantity in the sending queue according to the adding time sequence, and sending the data to a data receiving end. Therefore, the data sending end filters out the data which do not meet the requirements through layer-by-layer verification on one hand, and controls the time and the quantity of the data sent to the data receiving end on the other hand, so that the data receiving end can be prevented from receiving and processing a large amount of data in a short time, and the condition that the data receiving end is down because a large amount of data needs to be processed can be effectively prevented.
The above is the process of transmitting data, and the following will describe the process of receiving data, and the relationship between the two processes is different according to different situations:
in one embodiment, the data receiving end of the sending method is a data sending end of the receiving method, for example, the data sending end of the sending method is a first terminal, the data receiving end is a server, the data receiving end of the receiving method is a second terminal, and the data sending end is a server of the sending method. In this case, the data transmission method may be applied to a data transmission system including a first terminal, a server and a second terminal, wherein the server serves as a data receiving end to receive data from the first terminal during data transmission, and serves as a data transmitting end to transmit data to the second terminal during data reception. The process of the first terminal transmitting data to the server is performed according to the above-described method of transmitting data, and the process of the second terminal receiving data from the server may be performed according to a method of receiving data, which will be described below.
Alternatively, the executing body of the sending method and the executing body of the receiving method may be the same, and both are the first terminal, and when the first terminal sends data to the server, the first terminal may also receive data from the server, and when receiving data from the server, the first terminal may execute the method described below.
In other cases, the execution bodies of the sending method and the receiving method may correspond to each other, that is, the data sending end of the sending method is also the data sending end of the receiving method, and the data receiving end of the sending method is also the data receiving end of the receiving method. That is, the data sending end of the sending method is the first terminal, and the data receiving end is the server; the data receiving end of the receiving method is also a server, and the data sending end is also a first terminal. The procedure of the above-described transmission method is described from the perspective of a station at a first terminal, and the procedure of the reception method to be described below may be described from the perspective of a station at a server.
In the following, the second terminal will be used to receive data from the server, and other cases are similar to the above case and will not be described in detail.
As shown in fig. 2, the flow of the second terminal receiving data from the server is schematically shown as follows:
in step 201, the data receiving end receives data to be processed.
Step 201 may be performed immediately after step 103, or at any time after step 103, which is mainly related to the application scenario of the method. For example, if the method is applied in an instant messaging application, such as in a monitoring system, step 201 is performed immediately after step 103. For another example, if the data receiving end performs periodic or random statistics on the received data, step 201 may be performed at any time after step 103.
In a possible implementation, the main body specifically performing the reception of the data to be processed may also be a middleware integrated on the second terminal, the middleware uses a program for receiving the data in transmitting the data, and accordingly, the middleware of the second terminal may receive the data to be processed from the server.
When the middleware of the second terminal needs to receive data, for example, when the middleware of the second terminal receives data from the Kafka platform, the interface for receiving data may be called to establish a connection with the Kafka platform, as described above, the interface for receiving data may be encapsulated in the jar packet of "Mta _ Kafka sdk client receive" by naming "Mta _ Kafka sdk", and the first terminal is connected with the Kafka platform in the jar packet of "Mta _ Kafka sdk".
In a possible implementation process, the second terminal may receive the data to be processed from the server in a manner that, when a preset receiving period is reached, the middleware of the second terminal sends a request for obtaining the data to the server; and if the data to be processed exists in the server, sending the data to be processed to the middleware of the second terminal, and further receiving the data to be processed by the middleware of the second terminal. The second terminal may receive the data to be processed from the server in a manner that, after the second terminal establishes a connection with the server, the server may periodically push the data to the second terminal.
In step 202, the data receiving end adds the data to be processed to the processing queue.
In a possible embodiment, in order to avoid that the application layer of the second terminal suddenly receives and processes a large amount of data, the middleware of the second terminal adds the data to be processed to the processing queue after receiving the data to be processed, accordingly.
In step 203, when the preset selection period is reached, the data receiving end selects data not greater than the second preset amount in the processing queue according to the adding time sequence for processing.
The preset selection period and the second preset number can be determined through multiple tests and theoretical calculation according to the data processing capacity of the data receiving end.
In a possible embodiment, when the preset selection period is reached, the middleware of the second terminal selects data not greater than a second preset number from the processing queue according to the adding time sequence, and sends the data to the application layer for processing. Therefore, the situation that the second terminal goes down due to the fact that the application layer of the second terminal needs to process a large amount of data suddenly can be avoided, and normal operation of the second terminal is guaranteed.
When the middleware sends data to the application layer, the middleware can call a callback interface to establish connection with the application layer, and the callback interface can be encapsulated in Mta _ kafkaSdkClient _ CallBackInterface in a named mode.
If the method is applied to a monitoring system, the application layer of the second terminal can be an alarm, and if the data to be processed is fire alarm information, the application layer can send out an alarm signal corresponding to the fire alarm information.
Optionally, if the processing capability of the second terminal is relatively strong, the length of the processing queue may not be limited, for example, the processing queue may be an infinite queue. And if the processing capacity of the second terminal is limited, correspondingly, when the preset receiving period is reached, if the current length of the processing queue is smaller than the preset length threshold, the middleware of the second terminal sends a data acquisition request to the server.
In a possible embodiment, when the preset receiving period is reached, the middleware of the second terminal first detects the current length of the processing queue, and if the current length of the processing queue is smaller than a preset length threshold, the middleware sends a request for obtaining data to the server. And if the current length of the processing queue is equal to the preset length threshold value, the middleware stops sending the data acquisition request to the server, so that a large amount of data can be prevented from being blocked in the processing queue.
Based on the above, the process of the second terminal receiving the data from the server may be that, when the preset receiving period is reached, the middleware of the second terminal sends a request for obtaining the data to the server, where the request may carry type information of the data, and after the server receives the request, if there is data of the type information carried in the request, the server sends the data to the second terminal. And the middleware of the second terminal receives the data sent by the server as the data to be processed, the data to be processed is added into the processing queue, when the preset selection period is reached, the middleware selects the data not more than a second preset number in the processing queue according to the adding time sequence and sends the data to the application layer, and the application layer processes the data after receiving the data. Therefore, the second terminal periodically selects a second preset amount of data for processing, and the second terminal can be prevented from being down due to the fact that a large amount of data are processed in a short time.
In a possible application, the process related to receiving data may be performed by using the method described above, specifically, after the data receiving end receives the data to be processed, the data to be processed is first added to the processing queue, and then the data not greater than the second preset number is periodically selected from the processing queue according to the adding time sequence for processing. Therefore, the data receiving end can be prevented from being crashed due to the fact that a large amount of data are suddenly processed by the data receiving end, and normal operation of the data receiving end is guaranteed.
In the embodiment of the present disclosure, when the data sending end uses the above method to transmit data to the data receiving end, after the data to be sent is obtained, the data to be sent is added to the sending queue, and then the data not greater than the first preset number is periodically selected from the sending queue according to the adding time sequence and sent to the data receiving end. Therefore, by controlling the period of sending data to the data receiving end and the quantity of the data sent each time, the data receiving end can be effectively prevented from suddenly receiving a large amount of data, so that the condition that the data receiving end goes down due to the fact that the data receiving end processes a large amount of data is avoided, and the normal operation of the data receiving end is guaranteed.
Based on the same technical concept, an embodiment of the present disclosure further provides a device for transmitting data, where the device may be a data transmitting end in the foregoing embodiment, that is, the first terminal, as shown in fig. 3, and the device includes:
an obtaining module 310, configured to obtain data to be sent;
an adding module 320, configured to add the data to be sent to a sending queue;
the sending module 330 is configured to select, according to the adding time sequence, data that is not greater than a first preset number from the sending queue when a preset sending period is reached, and send the data to a data receiving end.
Optionally, the adding module 320 is specifically configured to:
and if the type information of the data to be sent is detected to be matched with the type information stored in advance, adding the data to be sent into a sending queue.
Optionally, the adding module 320 is specifically configured to:
and if the type information of the data to be sent is detected to be matched with the pre-stored type information and the data to be sent is not empty, adding the data to be sent into a sending queue.
Optionally, as shown in fig. 4, the obtaining module 310 includes:
an acquisition unit 311 configured to acquire original data;
a determining unit 312, configured to segment the original data to obtain multiple data to be sent if the data amount of the original data is greater than a preset threshold; and if the data volume of the original data is not larger than a preset threshold value, determining the original data as data to be sent.
The embodiment of the present disclosure further provides a device for transmitting data, where the device may be a data receiving end in the foregoing embodiment, that is, the second terminal, as shown in fig. 5, and the device includes:
a receiving module 510, configured to receive data to be processed;
an adding module 520, configured to add the to-be-processed data to a processing queue;
and the processing module 530 is configured to, when a preset selection period is reached, select, according to the adding time sequence, data in the processing queue that is not greater than a second preset number for processing.
Optionally, as shown in fig. 6, the receiving module 510 includes:
a sending unit 511, configured to send a request for obtaining data to a data sending end when a preset receiving period is reached;
a receiving unit 512, configured to receive to-be-processed data sent by the data sending end.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
In this disclosure, in the embodiment of the present disclosure, when the device is used to transmit data, after the data to be transmitted is obtained, the data to be transmitted is added to the transmission queue, and then data not greater than a first preset number is periodically selected from the transmission queue according to an addition time sequence and is transmitted to the data receiving end. Therefore, by controlling the period of sending data to the data receiving end and the quantity of the data sent each time, the data receiving end can be effectively prevented from suddenly receiving a large amount of data, so that the condition that the data receiving end goes down due to the fact that the data receiving end processes a large amount of data is avoided, and the normal operation of the data receiving end is guaranteed.
It should be noted that: in the data transmission device provided in the above embodiment, only the division of the functional modules is used for illustration when data is transmitted, and in practical applications, the function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus for transmitting data and the method for transmitting data provided by the above embodiments belong to the same concept, and specific implementation processes thereof are detailed in the method embodiments and are not described herein again.
The embodiment of the present disclosure further provides a system for transmitting data, as shown in fig. 7, the system includes a first terminal 710, a second terminal 720, and a server 730, where:
a first terminal 710, configured to obtain data to be sent; adding the data to be sent into a sending queue; when a preset sending period is reached, selecting data not greater than a first preset quantity from the sending queue according to the adding time sequence, and sending the data to the server 730;
the server 730, configured to store the data sent by the first terminal 710, and send the data to the second terminal 720 when receiving a data acquisition request sent by the second terminal 720;
the second terminal 720 is configured to send a data obtaining request to the server 730 when a preset receiving period is reached, receive data sent by the server 730 as to-be-processed data, add the to-be-processed data to a processing queue, and select data not greater than a second preset number from the processing queue according to an adding time sequence for processing when the preset selecting period is reached.
With regard to the system in the above-described embodiment, the specific manner in which the first terminal 710, the second terminal 720 and the server 730 perform operations has been described in detail in the embodiment related to the method, and will not be described in detail here.
Fig. 8 shows a block diagram of a terminal 800 according to an exemplary embodiment of the present invention, where the terminal may be the first terminal or the second terminal in the above embodiments. The terminal 800 may specifically be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III, motion video Experts compression standard Audio Layer 3), an MP4 player (Moving Picture Experts Group Audio Layer IV, motion video Experts compression standard Audio Layer 4), a notebook computer, or a desktop computer. The terminal 800 may also be referred to by other names such as user equipment, portable terminal, laptop terminal, desktop terminal, etc.
In general, the terminal 800 includes: a processor 801 and a memory 802.
The processor 801 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so forth. The processor 801 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 801 may also include a main processor and a coprocessor, where the main processor is a processor for processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 801 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the display screen. In some embodiments, the processor 801 may further include an AI (Artificial Intelligence) processor for processing computing operations related to machine learning.
Memory 802 may include one or more computer-readable storage media, which may be non-transitory. Memory 802 may also include high speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in memory 802 is used to store at least one instruction for execution by processor 801 to implement the method of transferring data provided by the method embodiments of the present application.
In some embodiments, the terminal 800 may further include: a peripheral interface 803 and at least one peripheral. The processor 801, memory 802 and peripheral interface 803 may be connected by bus or signal lines. Various peripheral devices may be connected to peripheral interface 803 by a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of a radio frequency circuit 804, a touch screen display 805, a camera 806, an audio circuit 807, a positioning component 808, and a power supply 809.
The peripheral interface 803 may be used to connect at least one peripheral related to I/O (Input/Output) to the processor 801 and the memory 802. In some embodiments, the processor 801, memory 802, and peripheral interface 803 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 801, the memory 802, and the peripheral interface 803 may be implemented on separate chips or circuit boards, which are not limited by this embodiment.
The Radio Frequency circuit 804 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 804 communicates with communication networks and other communication devices via electromagnetic signals. The rf circuit 804 converts an electrical signal into an electromagnetic signal to be transmitted, or converts a received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 804 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuit 804 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: metropolitan area networks, various generation mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the radio frequency circuit 804 may further include NFC (Near Field Communication) related circuits, which are not limited in this application.
The display screen 805 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display 805 is a touch display, the display 805 also has the ability to capture touch signals on or above the surface of the display 805. The touch signal may be input to the processor 801 as a control signal for processing. At this point, the display 805 may also be used to provide virtual buttons and/or a virtual keyboard, also referred to as soft buttons and/or a soft keyboard. In some embodiments, the display 805 may be one, providing the front panel of the terminal 800; in other embodiments, the display 805 may be at least two, respectively disposed on different surfaces of the terminal 800 or in a folded design; in still other embodiments, the display 805 may be a flexible display disposed on a curved surface or a folded surface of the terminal 800. Even further, the display 805 may be arranged in a non-rectangular irregular pattern, i.e., a shaped screen. The Display 805 can be made of LCD (liquid crystal Display), OLED (Organic Light-Emitting Diode), and the like.
The camera assembly 806 is used to capture images or video. Optionally, camera assembly 806 includes a front camera and a rear camera. Generally, a front camera is disposed at a front panel of the terminal, and a rear camera is disposed at a rear surface of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 806 may also include a flash. The flash lamp can be a monochrome temperature flash lamp or a bicolor temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp, and can be used for light compensation at different color temperatures.
The audio circuit 807 may include a microphone and a speaker. The microphone is used for collecting sound waves of a user and the environment, converting the sound waves into electric signals, and inputting the electric signals to the processor 801 for processing or inputting the electric signals to the radio frequency circuit 804 to realize voice communication. For the purpose of stereo sound collection or noise reduction, a plurality of microphones may be provided at different portions of the terminal 800. The microphone may also be an array microphone or an omni-directional pick-up microphone. The speaker is used to convert electrical signals from the processor 801 or the radio frequency circuit 804 into sound waves. The loudspeaker can be a traditional film loudspeaker or a piezoelectric ceramic loudspeaker. When the speaker is a piezoelectric ceramic speaker, the speaker can be used for purposes such as converting an electric signal into a sound wave audible to a human being, or converting an electric signal into a sound wave inaudible to a human being to measure a distance. In some embodiments, the audio circuitry 807 may also include a headphone jack.
The positioning component 808 is used to locate the current geographic position of the terminal 800 for navigation or LBS (location based Service). The positioning component 808 may be a positioning component based on the GPS (global positioning System) in the united states, the beidou System in china, the graves System in russia, or the galileo System in the european union.
Power supply 809 is used to provide power to various components in terminal 800. The power supply 809 can be ac, dc, disposable or rechargeable. When the power source 809 comprises a rechargeable battery, the rechargeable battery may support wired or wireless charging. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, terminal 800 also includes one or more sensors 810. The one or more sensors 810 include, but are not limited to: acceleration sensor 811, gyro sensor 812, pressure sensor 813, fingerprint sensor 814, optical sensor 815 and proximity sensor 816.
The acceleration sensor 811 may detect the magnitude of acceleration in three coordinate axes of the coordinate system established with the terminal 800. For example, the acceleration sensor 811 may be used to detect the components of the gravitational acceleration in three coordinate axes. The processor 801 may control the touch screen 805 to display the user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 811. The acceleration sensor 811 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 812 may detect a body direction and a rotation angle of the terminal 800, and the gyro sensor 812 may cooperate with the acceleration sensor 811 to acquire a 3D motion of the user with respect to the terminal 800. From the data collected by the gyro sensor 812, the processor 801 may implement the following functions: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
Pressure sensors 813 may be disposed on the side bezel of terminal 800 and/or underneath touch display 805. When the pressure sensor 813 is disposed on the side frame of the terminal 800, the holding signal of the user to the terminal 800 can be detected, and the processor 801 performs left-right hand recognition or shortcut operation according to the holding signal collected by the pressure sensor 813. When the pressure sensor 813 is disposed at a lower layer of the touch display screen 805, the processor 801 controls the operability control on the UI interface according to the pressure operation of the user on the touch display screen 805. The operability control comprises at least one of a button control, a scroll bar control, an icon control and a menu control.
The fingerprint sensor 814 is used for collecting a fingerprint of the user, and the processor 801 identifies the identity of the user according to the fingerprint collected by the fingerprint sensor 814, or the fingerprint sensor 814 identifies the identity of the user according to the collected fingerprint. Upon identifying that the user's identity is a trusted identity, the processor 801 authorizes the user to perform relevant sensitive operations including unlocking a screen, viewing encrypted information, downloading software, paying for and changing settings, etc. Fingerprint sensor 814 may be disposed on the front, back, or side of terminal 800. When a physical button or a vendor Logo is provided on the terminal 800, the fingerprint sensor 814 may be integrated with the physical button or the vendor Logo.
The optical sensor 815 is used to collect the ambient light intensity. In one embodiment, the processor 801 may control the display brightness of the touch screen 805 based on the ambient light intensity collected by the optical sensor 815. Specifically, when the ambient light intensity is high, the display brightness of the touch display screen 805 is increased; when the ambient light intensity is low, the display brightness of the touch display 805 is turned down. In another embodiment, the processor 801 may also dynamically adjust the shooting parameters of the camera assembly 806 based on the ambient light intensity collected by the optical sensor 815.
A proximity sensor 816, also known as a distance sensor, is typically provided on the front panel of the terminal 800. The proximity sensor 816 is used to collect the distance between the user and the front surface of the terminal 800. In one embodiment, when the proximity sensor 816 detects that the distance between the user and the front surface of the terminal 800 gradually decreases, the processor 801 controls the touch display 805 to switch from the bright screen state to the dark screen state; when the proximity sensor 816 detects that the distance between the user and the front surface of the terminal 800 becomes gradually larger, the processor 801 controls the touch display 805 to switch from the screen-on state to the screen-on state.
Those skilled in the art will appreciate that the configuration shown in fig. 8 is not intended to be limiting of terminal 800 and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components may be used.
In an exemplary embodiment, a computer-readable storage medium, such as a memory, including instructions executable by a processor in a terminal to perform the method of transmitting data in the above-described embodiments is also provided. For example, the computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
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, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (14)

1. A method of transmitting data, the method comprising:
acquiring data to be sent;
adding the data to be sent into a sending queue;
and when the preset sending period is reached, selecting data with the quantity not more than a first preset quantity in the sending queue according to the adding time sequence, and sending the data to a data receiving end.
2. The method of claim 1, wherein adding the data to be sent to a send queue comprises:
and if the type information of the data to be sent is detected to be matched with the type information stored in advance, adding the data to be sent into a sending queue.
3. The method according to claim 2, wherein the adding the data to be sent to a sending queue if it is detected that the type information of the data to be sent matches with pre-stored type information comprises:
and if the type information of the data to be sent is detected to be matched with the pre-stored type information and the data to be sent is not empty, adding the data to be sent into a sending queue.
4. The method of claim 1, wherein the obtaining data to be transmitted comprises:
acquiring original data;
if the data volume of the original data is larger than a preset threshold value, segmenting the original data to obtain a plurality of data to be sent;
and if the data volume of the original data is not larger than a preset threshold value, determining the original data as data to be sent.
5. A method of transmitting data, the method comprising:
receiving data to be processed;
adding the data to be processed into a processing queue;
and when the preset selection period is reached, selecting data not more than a second preset number from the processing queue according to the adding time sequence, and processing the data.
6. The method of claim 5, wherein receiving the data to be processed comprises:
when a preset receiving period is reached, sending a data acquisition request to a data sending end;
and receiving the data to be processed sent by the data sending end.
7. An apparatus for transmitting data, the apparatus comprising:
the acquisition module is used for acquiring data to be transmitted;
the adding module is used for adding the data to be sent to a sending queue;
and the sending module is used for selecting data not greater than a first preset quantity from the sending queue according to the adding time sequence when a preset sending period is reached, and sending the data to the data receiving end.
8. The apparatus according to claim 7, wherein the adding module is specifically configured to:
and if the type information of the data to be sent is detected to be matched with the type information stored in advance, adding the data to be sent into a sending queue.
9. The apparatus according to claim 8, wherein the adding module is specifically configured to:
and if the type information of the data to be sent is detected to be matched with the pre-stored type information and the data to be sent is not empty, adding the data to be sent into a sending queue.
10. The apparatus of claim 7, wherein the obtaining module comprises:
an acquisition unit configured to acquire original data;
the judging unit is used for segmenting the original data to obtain a plurality of data to be sent if the data volume of the original data is larger than a preset threshold value; and if the data volume of the original data is not larger than a preset threshold value, determining the original data as data to be sent.
11. An apparatus for transmitting data, the apparatus comprising:
the receiving module is used for receiving data to be processed;
the adding module is used for adding the data to be processed into a processing queue;
and the processing module is used for selecting data not greater than a second preset quantity from the processing queue according to the adding time sequence and processing the data when a preset selecting period is reached.
12. The apparatus of claim 11, wherein the receiving module comprises:
the sending unit is used for sending a data obtaining request to the data sending end when a preset receiving period is reached;
and the receiving unit is used for receiving the data to be processed sent by the data sending end.
13. A system for transmitting data, the system comprising a first terminal, a second terminal, and a server, wherein:
the first terminal is used for acquiring data to be sent, adding the data to be sent into a sending queue, and when a preset sending period is reached, selecting data with the quantity not greater than a first preset quantity in the sending queue according to an adding time sequence and sending the data to the server;
the server is used for storing the data sent by the first terminal, and sending the data to the second terminal when receiving a data acquisition request sent by the second terminal;
and the second terminal is used for sending a data acquisition request to the server when a preset receiving period is reached, receiving data sent by the server as to-be-processed data, adding the to-be-processed data into a processing queue, and selecting data with the quantity not greater than a second preset quantity from the processing queue according to the adding time sequence for processing when the preset selecting period is reached.
14. The computer equipment is characterized by comprising a processor, a communication interface, a memory and a communication bus, wherein the processor and the communication interface are used for realizing the communication between the processor and the memory through the bus; a memory for storing a computer program; a processor for executing a program stored in the memory to perform the method steps of any one of claims 1 to 4 or to perform the method steps of claim 5 or 6.
CN201811079765.3A 2018-09-17 2018-09-17 Method and device for transmitting data Active CN110912830B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811079765.3A CN110912830B (en) 2018-09-17 2018-09-17 Method and device for transmitting data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811079765.3A CN110912830B (en) 2018-09-17 2018-09-17 Method and device for transmitting data

Publications (2)

Publication Number Publication Date
CN110912830A true CN110912830A (en) 2020-03-24
CN110912830B CN110912830B (en) 2023-05-02

Family

ID=69813666

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811079765.3A Active CN110912830B (en) 2018-09-17 2018-09-17 Method and device for transmitting data

Country Status (1)

Country Link
CN (1) CN110912830B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111464386A (en) * 2020-03-30 2020-07-28 江苏徐工工程机械研究院有限公司 Communication conversion method and device for data transmission and communication system
CN113301104A (en) * 2021-02-09 2021-08-24 阿里巴巴集团控股有限公司 Data processing system and method
CN113890852A (en) * 2021-08-24 2022-01-04 北京旷视科技有限公司 Data transmission method, device, equipment and medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060098675A1 (en) * 2004-11-05 2006-05-11 Michitaka Okuno Traffic control method for network equipment
US20110270943A1 (en) * 2010-04-30 2011-11-03 International Business Machines Corporation Zero copy data transmission in a software based rdma network stack
CN102685077A (en) * 2011-03-16 2012-09-19 腾讯科技(深圳)有限公司 Method and device for processing network packets
CN104869073A (en) * 2014-02-26 2015-08-26 中兴通讯股份有限公司 Flow control method and device
CN105187533A (en) * 2015-09-10 2015-12-23 浪潮软件股份有限公司 Data transmission method and device
CN107589990A (en) * 2017-10-26 2018-01-16 郑州云海信息技术有限公司 A kind of method and system of the data communication based on thread pool
CN107979582A (en) * 2016-10-25 2018-05-01 央视国际网络无锡有限公司 A kind of udp data flow transmission methods and its device
CN108270685A (en) * 2018-01-31 2018-07-10 深圳市国微电子有限公司 The method, apparatus and terminal of a kind of data acquisition

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060098675A1 (en) * 2004-11-05 2006-05-11 Michitaka Okuno Traffic control method for network equipment
US20110270943A1 (en) * 2010-04-30 2011-11-03 International Business Machines Corporation Zero copy data transmission in a software based rdma network stack
CN102685077A (en) * 2011-03-16 2012-09-19 腾讯科技(深圳)有限公司 Method and device for processing network packets
CN104869073A (en) * 2014-02-26 2015-08-26 中兴通讯股份有限公司 Flow control method and device
CN105187533A (en) * 2015-09-10 2015-12-23 浪潮软件股份有限公司 Data transmission method and device
CN107979582A (en) * 2016-10-25 2018-05-01 央视国际网络无锡有限公司 A kind of udp data flow transmission methods and its device
CN107589990A (en) * 2017-10-26 2018-01-16 郑州云海信息技术有限公司 A kind of method and system of the data communication based on thread pool
CN108270685A (en) * 2018-01-31 2018-07-10 深圳市国微电子有限公司 The method, apparatus and terminal of a kind of data acquisition

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111464386A (en) * 2020-03-30 2020-07-28 江苏徐工工程机械研究院有限公司 Communication conversion method and device for data transmission and communication system
CN113301104A (en) * 2021-02-09 2021-08-24 阿里巴巴集团控股有限公司 Data processing system and method
CN113301104B (en) * 2021-02-09 2024-04-12 阿里巴巴集团控股有限公司 Data processing system and method
CN113890852A (en) * 2021-08-24 2022-01-04 北京旷视科技有限公司 Data transmission method, device, equipment and medium
CN113890852B (en) * 2021-08-24 2024-05-28 北京旷视科技有限公司 Data transmission method, device, equipment and medium

Also Published As

Publication number Publication date
CN110912830B (en) 2023-05-02

Similar Documents

Publication Publication Date Title
CN108966008B (en) Live video playback method and device
CN110278464B (en) Method and device for displaying list
CN111107389B (en) Method, device and system for determining live broadcast watching time length
CN110740340B (en) Video live broadcast method and device and storage medium
CN110569220B (en) Game resource file display method and device, terminal and storage medium
CN109726064B (en) Method, device and system for simulating abnormal operation of client and storage medium
CN110196673B (en) Picture interaction method, device, terminal and storage medium
CN110912830B (en) Method and device for transmitting data
CN111106902B (en) Data message transmission method, device, equipment and computer readable storage medium
CN108401194B (en) Time stamp determination method, apparatus and computer-readable storage medium
CN111064657B (en) Method, device and system for grouping concerned accounts
CN110086814B (en) Data acquisition method and device and storage medium
CN109688064B (en) Data transmission method and device, electronic equipment and storage medium
CN109413190B (en) File acquisition method and device, electronic equipment and storage medium
CN107800720B (en) Hijacking reporting method, device, storage medium and equipment
CN108260023B (en) Live broadcast method and device
CN108683699B (en) Method and device for forwarding service request
CN110971692B (en) Method and device for opening service and computer storage medium
CN110941458B (en) Method, device, equipment and storage medium for starting application program
CN111464829B (en) Method, device and equipment for switching media data and storage medium
CN108310767B (en) Information display method, device, equipment and computer readable storage medium
CN110380956B (en) Method, device and system for transmitting instant communication message
CN107948171B (en) User account management method and device
CN111708581A (en) Application starting method, device, equipment and computer storage medium
CN112260845A (en) Method and device for accelerating data transmission

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
GR01 Patent grant
GR01 Patent grant