Data stream processing method, processing system, proxy server and product
By establishing a long connection channel between the proxy server and the message proxy system, storing and pushing remote messages, the shortage of TCP long connection and WebSocket connection in data transmission efficiency is solved, and efficient data streaming is achieved.
Patent Information
- Application Number
- CN202411793486.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-06
- Publication Date
- 2025-02-25
AI Technical Summary
In the prior art, TCP long connections and WebSocket connections have insufficient data transmission efficiency, especially WebSocket connections require additional mechanisms to handle the persistence and retransmission of messages, resulting in increased server resource usage and reduced transmission efficiency.
By establishing a long connection channel between the proxy server and the message proxy system, the remote message sent by the first applet is stored in the message proxy system, and the remote message subscribed by the target second applet is pushed to it through the proxy server.
It realizes persistent storage and efficient push of remote messages, improves the transmission efficiency of data streams, and reduces the use of server resources.
Smart Images

Figure CN119520586A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of mobile communication technology, and in particular to a data stream processing method, a processing system, a proxy server and a product. Background Art
[0002] TCP long connection requires server memory resources, and it has no built-in mechanism to enable the server to actively push data to the client, resulting in low data transmission efficiency; WebSocket connection requires additional mechanisms to handle message persistence and retransmission, which also leads to low data transmission efficiency; moreover, each WebSocket connection requires server resources, and as the client data increases, its data transmission efficiency will become worse and worse.
[0003] Therefore, how to achieve efficient transmission of data streams is an urgent problem to be solved. Summary of the invention
[0004] The main technical problem solved by the present invention is how to achieve efficient transmission of data streams.
[0005] According to the first aspect, an embodiment provides a method for processing a data stream, the method comprising: The first applet sends a remote message of a topic to the proxy server through a first persistent connection channel pre-established with the proxy server; the remote message includes a message ID, message content, and message parameters; At least one second applet sends a subscription request to the proxy server through a second persistent connection channel pre-established with the proxy server; the subscription request includes a topic of a remote message to be subscribed; After receiving a remote message of a subject sent by the first applet, the proxy server sends the remote message of the subject to the message proxy system for storage through a third long connection channel pre-established with the message proxy system; The proxy server obtains the remote message of the topic from the message proxy system through the third long connection channel, determines the target second applet that has subscribed to the topic according to the topic of the remote message, and pushes the remote message to the target second applet through the second long connection channel between the target second applet.
[0006] According to the second aspect, an embodiment provides a proxy server, including: A communication module, configured to establish a first persistent connection channel with a first applet, and receive a remote message of a topic sent by the first applet through the first persistent connection channel; establish a second persistent connection channel with at least one second applet, and receive a subscription request sent by the at least one second applet through the second persistent connection channel; Processing modules for: After receiving a remote message of a topic sent by the first applet, add the remote message of the topic to a consumer group corresponding to the same topic to obtain consumer group data; send the consumer group data to the message proxy system for storage through a third long connection channel pre-established with the message proxy system; The consumer group data is obtained from the message proxy system through the third long connection channel, and the target second applet subscribed to the topic is determined according to the topic and message ID in the consumer group data; through the communication module, the remote message is pushed to the target second applet through the second long connection channel between the target second applet.
[0007] According to a third aspect, an embodiment provides a data stream processing system, including a first applet, at least one second applet, a proxy server, and a message proxy system; The first applet is used to send a remote message of a subject to the proxy server through a first persistent connection channel pre-established with the proxy server; the remote message includes a message ID, message content, and message parameters; The at least one second applet is used to send a subscription request to the proxy server through a second persistent connection channel pre-established with the proxy server; the subscription request includes a subject of a remote message to be subscribed; The proxy server is configured to, after receiving a remote message of a subject sent by the first mini-program, send the remote message of the subject to the message proxy system through a third long connection channel pre-established with the message proxy system for storage; obtain the remote message of the subject from the message proxy system through the third long connection channel, determine a target second mini-program subscribed to the subject according to the subject of the remote message, and push the remote message to the target second mini-program through a second long connection channel between the target second mini-program and the proxy server; The message proxy system is used to receive and store the remote message of the topic sent by the proxy server.
[0008] According to a fourth aspect, an embodiment provides a computer program product, comprising a computer program and / or instructions, wherein the computer program and / or instructions implement the above method when executed by a processor.
[0009] According to the data flow processing method of the above embodiment, since the first applet and the proxy server have established a first long connection channel, at least one second applet and the proxy server have established a second long connection channel, and the proxy server has established a third long connection channel with the message proxy system, on this basis, the message proxy system can store remote messages of related topics sent by the first applet to the proxy server, so that when the target second applet needs to receive remote messages of the corresponding topic, the proxy server can obtain the remote messages of the corresponding topic from the message proxy system and push them to the target second applet through the second long connection channel. In this way, remote messages of various topics can be permanently stored in the message proxy system, and at the same time, the proxy server can directly push remote messages to the target second applet, so that the transmission efficiency of the data flow can be improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 A schematic diagram of a flow chart of a method for processing a data stream provided in this embodiment; Figure 2 A structural block diagram of a proxy server provided in this embodiment. DETAILED DESCRIPTION
[0011] The present invention is further described in detail below by specific embodiments in conjunction with the accompanying drawings. Wherein similar elements in different embodiments adopt associated similar element numbers. In the following embodiments, many detailed descriptions are for making the present application better understood. However, those skilled in the art can easily recognize that some features can be omitted in different situations, or can be replaced by other elements, materials, methods. In some cases, some operations related to the present application are not shown or described in the specification, this is to avoid the core part of the present application being overwhelmed by too much description, and for those skilled in the art, it is not necessary to describe these related operations in detail, and they can fully understand the related operations according to the description in the specification and the general technical knowledge in the art.
[0012] In addition, the features, operations or characteristics described in the specification can be combined in any appropriate manner to form various implementations. At the same time, the steps or actions in the method description can also be interchanged or adjusted in a manner that is obvious to those skilled in the art. Therefore, the various sequences in the specification and the drawings are only for the purpose of clearly describing a certain embodiment and are not meant to be a required sequence, unless otherwise specified that a certain sequence must be followed.
[0013] The serial numbers assigned to the components herein, such as "first", "second", etc., are only used to distinguish the objects described and do not have any order or technical meaning. The "connection" and "coupling" mentioned in this application, unless otherwise specified, include direct and indirect connections (couplings).
[0014] Currently, TCP long connections require server memory resources, and there is no built-in mechanism for the server to actively push data to the client, resulting in low data transmission efficiency; WebSocket connections require additional mechanisms to handle message persistence and retransmission, which also results in low data transmission efficiency; moreover, each WebSocket connection requires server resources, and as client data increases, its data transmission efficiency will become increasingly poor. Therefore, how to achieve efficient data flow transmission is becoming increasingly critical.
[0015] Based on this, the solution of the present invention is proposed. In an embodiment of the present invention, a first applet and a proxy server establish a first long connection channel, at least one second applet and a proxy server establish a second long connection channel, and the proxy server establishes a third long connection channel with a message proxy system. On this basis, the message proxy system can store remote messages of related topics sent by the first applet to the proxy server, so that when the target second applet needs to receive remote messages of the corresponding topics, the proxy server can obtain the remote messages of the corresponding topics from the message proxy system and push them to the target second applet through the second long connection channel. In this way, remote messages of various topics can be persistently stored in the message proxy system, and at the same time, the proxy server can directly push remote messages to the target second applet, so that the transmission efficiency of the data stream can be improved. This is described in detail below through some embodiments.
[0016] Example 1, please refer to Figure 1 , Figure 1 FIG. 1 is a flow chart of a method for processing a data stream provided in this embodiment. Figure 1 As shown, the data stream processing method specifically includes the following steps 101-104: Step 101: The first applet sends a remote message of a topic to the proxy server through a first long connection channel pre-established with the proxy server; the remote message includes a message ID, message content, and message parameters.
[0017] Here, the first applet is edited by a preset editor. The first applet can be any applet, and illustratively, the first applet can be a check-in applet.
[0018] It should be noted that the preset editor may be a tool for editing and configuring a loader.
[0019] It should be noted that the proxy server is used to classify remote messages. Specifically, the proxy server is used to add remote messages of a topic to the consumer group corresponding to the same topic.
[0020] It should be noted that the first long connection channel can be a WebSocket long connection channel, a TCP long connection channel, an HTTPS2, HTTPS3 long connection channel, or an MQTT long connection channel, and the present invention does not impose any limitation on this.
[0021] It should be noted that the message ID is a unique identifier used to identify a message. For example, the message ID can be a universally unique identifier (UUID). In practical applications, the message ID can be used to track the message processing process, including the sending time, receiving time, processing status, etc.; by checking the message ID, repeated processing of the same message can be avoided; when a problem occurs in message processing, the message ID can be used to quickly locate the problem.
[0022] It should be noted that the message content can represent the specific information contained in the message. For example, the message content can be a check-in message or a class member.
[0023] It should be noted that the message parameters may represent parameter information contained in the message. For example, the message parameters may be the clock-in person and the clock-in time, or the name, age and gender; the present invention does not impose any limitation on this.
[0024] Here, when obtaining the remote message list, after the first mini program edited by the preset editor receives the message content and message parameters set by the user to be published, the message content and message parameters to be published by the first mini program can be added through the background server, and a message ID corresponding to the message content can be generated through the background server to obtain a remote message of a topic; wherein the message ID is a unique identifier of the message content; the background server stores the remote messages of each topic to obtain a remote message list; wherein, one topic corresponds to at least one remote message.
[0025] In actual applications, after the proxy server assigns a topic ocs-message to the preset editor, the preset editor can create a small program (the first small program), and connect to the backend server through the API interface in the message management module of the small program to add the message content and message parameters that the small program needs to publish; at the same time, the backend server will automatically generate a message ID, which, together with the message content and message parameters, constitutes a remote message under a topic. Remote messages of multiple topics can form a remote message list, which is stored on the backend server.
[0026] It should be noted that the corresponding message content and message parameters can be identified through the message ID, so the transmission accuracy can be improved in the process of transmitting remote messages.
[0027] Here, before the first applet sends a remote message of a topic to the proxy server through the first long connection channel pre-established with the proxy server, the first applet obtains at least one remote message from the remote message list.
[0028] Here, after the first applet obtains at least one remote message from the remote message list, the first applet sends at least one remote message of a topic to the proxy server through the first long connection channel pre-established with the proxy server to publish at least one remote message of the topic.
[0029] In actual application, when the applet is in the editing state, the remote message to be published can be selected from the remote message list of the background server, and the message parameters to be transmitted can be assigned values so as to be published through the message publishing module.
[0030] For example, after the first mini program obtains a remote message whose content is a class member from the remote message list, it can assign values to the name, age, and gender in the message parameters respectively, and publish the remote message through the message publishing module.
[0031] Here, the data format of the remote message is JSON format.
[0032] It should be noted that JSON (JavaScript Object Notation) is a lightweight data exchange format used to store and represent data.
[0033] Step 102: at least one second applet sends a subscription request to the proxy server through a second long connection channel pre-established with the proxy server; the subscription request includes a subject of a remote message to be subscribed.
[0034] Here, the second applet is edited by a preset editor. The second applet can be any applet, and illustratively, the second applet can be a check-in applet.
[0035] It should be noted that the second long connection channel can be a WebSocket long connection channel, a TCP long connection channel, an HTTPS2, HTTPS3 long connection channel, or an MQTT long connection channel, and the present invention does not impose any limitation on this.
[0036] In actual applications, after the proxy server assigns a topic ocs-message to the preset editor, the preset editor can create at least one mini-program (at least one second mini-program). When the mini-program is in editing mode, the message subscription module of the mini-program can send a subscription request to the proxy server to subscribe to the topic of the remote message, and add subsequent behaviors by dragging and dropping. For example, adding read-write devices, adding API interface calls, adding conditional judgments, adding printing, adding pop-up boxes, or adding code scanning, etc. In other words, after the mini-program receives a remote message, it can directly configure the data to execute the above-configured behavior without hard coding. For example, when the second mini-program subscribes to a remote message from a class member, the acquired message parameters such as name, age, and gender can be assigned to the text box for page display, or a pop-up prompt can be made.
[0037] Here, the proxy server receives the remote message published by the first applet asynchronously with pushing the remote message to the target second applet.
[0038] In actual applications, since the target second applet is not always online, when the proxy server continuously receives remote messages published by the first applet, it can first store these remote messages, and when the target second applet is online, it can push the subscribed remote messages to the target second applet. In this way, not only a large amount of data flow can be stored, but also the efficiency of data transmission can be improved.
[0039] Step 103: After receiving a remote message of a subject sent by the first applet, the proxy server sends the remote message of the subject to the message proxy system for storage through a third long connection channel pre-established with the message proxy system.
[0040] It should be noted that the third long connection channel can be a WebSocket long connection channel, a TCP long connection channel, an HTTPS2, HTTPS3 long connection channel, or an MQTT long connection channel, and the present invention does not impose any limitation on this.
[0041] It should be noted that the message broker system can be a high-throughput distributed publish-subscribe message system, such as Kafka.
[0042] In actual applications, after the proxy server receives the JSON data subscribed by the mini program, it will add the message ID to the consumer group of the topic according to the topic in the JSON data and push it to the message proxy system.
[0043] For example, when editing, applet A subscribes to three remote messages. When the applet is first run, it will establish three long connection channels with the proxy server. Each channel will send a JSON data for subscription. The proxy server will establish a long connection channel with the message proxy system accordingly, and then push the JSON data to the message proxy system. According to the subject in the JSON data, the message ID will be added to the consumer group of the corresponding topic to form consumer group data.
[0044] Here, the transmission protocols of the first long connection channel and the second long connection channel are the same; the transmission protocols of the first long connection channel and the third long connection channel are different; and each remote message corresponds to a first long connection channel and a third long connection channel.
[0045] Step 104: The proxy server obtains the remote message of the topic from the message proxy system through the third long connection channel, determines the target second applet that has subscribed to the topic according to the topic of the remote message, and pushes the remote message to the target second applet through the second long connection channel between the target second applet and the proxy server.
[0046] It should be noted that the target second mini program is any mini program in the second mini program.
[0047] It should be noted that the message proxy system stores multiple consumer group data under each topic; the target second applet can obtain the corresponding remote message by identifying whether the message ID corresponding to the subscribed topic is the same as the message ID in the consumer group data.
[0048] Here, when the proxy server obtains the remote message of the subject from the message proxy system through the third long connection channel, the proxy server may obtain the remote message of the subject from the message proxy system through the third long connection channel at a preset time interval.
[0049] It should be noted that the preset time interval may be any time interval, for example, 200 ms.
[0050] It should be noted that when the first mini program is closed, the first long connection will also be disconnected, and the proxy server will also remove the first long connection in the consumer group.
[0051] The data stream processing method provided in this embodiment is that the first applet and the proxy server establish a first long connection channel, at least one second applet and the proxy server establish a second long connection channel, and the proxy server and the message proxy system establish a third long connection channel. On this basis, the message proxy system can store remote messages of related topics sent by the first applet to the proxy server, so that when the target second applet needs to receive remote messages of the corresponding topic, the proxy server can obtain the remote messages of the corresponding topic from the message proxy system and push them to the target second applet through the second long connection channel. In this way, remote messages of various topics can be persistently stored in the message proxy system, and at the same time, the proxy server can directly push remote messages to the target second applet, so that the transmission efficiency of the data stream can be improved.
[0052] Example 2, please refer to Figure 2 , Figure 2 is a structural block diagram of a proxy server provided in this embodiment, such as Figure 2 As shown, the proxy server 10 includes a communication module 1001 and a processing module 1002 .
[0053] The communication module 1002 is used to establish a first long connection channel with the first applet, receive a remote message of a topic sent by the first applet through the first long connection channel; establish a second long connection channel with at least one second applet, receive a subscription request sent by the at least one second applet through the second long connection channel. That is, it is used to execute the above steps 101 and 102. The specific process is shown in the above steps 101 and 102, which will not be repeated here.
[0054] Processing module 1002 is used to, after receiving a remote message of a topic sent by the first applet, add the remote message of the topic to the consumer group corresponding to the same topic to obtain consumer group data; send the consumer group data to the message agent system for storage through the third long connection channel pre-established with the message agent system; obtain the consumer group data from the message agent system through the third long connection channel, and determine the target second applet that has subscribed to the topic according to the topic and message ID in the consumer group data; and push the remote message to the target second applet through the second long connection channel between the target second applet and the communication module. That is, it is used to execute the above steps 103 and 104. The specific process is shown in the above steps 103 and 104, which will not be repeated here.
[0055] This embodiment provides a proxy server, the communication module is used to establish a first long connection channel with a first applet, receive a remote message of a topic sent by the first applet through the first long connection channel; establish a second long connection channel with at least one second applet, receive a subscription request sent by at least one second applet through the second long connection channel; the processing module is used to add the remote message of the topic to the consumer group corresponding to the same topic after receiving the remote message of the topic sent by the first applet, and obtain consumer group data; send the consumer group data to the message proxy system through a third long connection channel established in advance with the message proxy system for storage; obtain the consumer group data from the message proxy system through the third long connection channel, and determine the target second applet that subscribes to the topic according to the topic and message ID in the consumer group data; through the communication module, push the remote message to the target second applet through the second long connection channel between the target second applet. In this way, the message proxy system can store the remote message of the relevant topic sent by the first applet to the proxy server, so that when the target second applet needs to receive the remote message of the corresponding topic, the proxy server can obtain the remote message of the corresponding topic from the message proxy system and push it to the target second applet through the second long connection channel. In this way, remote messages of various topics can be persistently stored in the message proxy system, and the proxy server can directly push remote messages to the target second applet, thus improving the transmission efficiency of data streams.
[0056] The present application also provides a data stream processing system, which includes a first applet, at least one second applet, a proxy server, and a message proxy system. The first applet is used to send a remote message of a subject to the proxy server through a first persistent connection channel pre-established with the proxy server; the remote message includes a message ID, message content, and message parameters; The at least one second applet is used to send a subscription request to the proxy server through a second persistent connection channel pre-established with the proxy server; the subscription request includes a subject of a remote message to be subscribed; The proxy server is configured to, after receiving a remote message of a subject sent by the first mini-program, send the remote message of the subject to the message proxy system through a third long connection channel pre-established with the message proxy system for storage; obtain the remote message of the subject from the message proxy system through the third long connection channel, determine a target second mini-program subscribed to the subject according to the subject of the remote message, and push the remote message to the target second mini-program through a second long connection channel between the target second mini-program and the proxy server; The message proxy system is used to receive and store the remote message of the topic sent by the proxy server.
[0057] The data stream processing system provided in this embodiment is used to establish a first long connection channel with a first applet, receive a remote message of a topic sent by the first applet through the first long connection channel; establish a second long connection channel with at least one second applet, receive a subscription request sent by at least one second applet through the second long connection channel; after receiving a remote message of a topic sent by the first applet, add the remote message of the topic to the consumer group corresponding to the same topic to obtain consumer group data; send the consumer group data to the message agent system for storage through a third long connection channel established in advance with the message agent system; obtain the consumer group data from the message agent system through the third long connection channel, and determine the target second applet that subscribes to the topic according to the topic and message ID in the consumer group data; through the communication module, push the remote message to the target second applet through the second long connection channel between the target second applet. In this way, the message agent system can store the remote message of the relevant topic sent by the first applet to the proxy server, so that when the target second applet needs to receive the remote message of the corresponding topic, the proxy server can obtain the remote message of the corresponding topic from the message agent system and push it to the target second applet through the second long connection channel. In this way, remote messages of various topics can be persistently stored in the message proxy system, and the proxy server can directly push remote messages to the target second applet, thus improving the transmission efficiency of data streams.
[0058] Those skilled in the art will appreciate that all or part of the functions of the various methods in the above-mentioned embodiments can be implemented by hardware or by computer programs. When all or part of the functions in the above-mentioned embodiments are implemented by computer programs, the program can be stored in a computer-readable storage medium, and the storage medium can include: read-only memory, random access memory, disk, optical disk, hard disk, etc., and the program is executed by a computer to implement the above-mentioned functions. For example, the program is stored in the memory of the device, and when the program in the memory is executed by the processor, all or part of the above-mentioned functions can be implemented. In addition, when all or part of the functions in the above-mentioned embodiments are implemented by computer programs, the program can also be stored in a storage medium such as a server, another computer, disk, optical disk, flash disk or mobile hard disk, and can be downloaded or copied and saved in the memory of the local device, or the system of the local device is updated, and when the program in the memory is executed by the processor, all or part of the functions in the above-mentioned embodiments can be implemented.
[0059] The above specific examples are used to illustrate the present invention, which is only used to help understand the present invention and is not intended to limit the present invention. For those skilled in the art, according to the concept of the present invention, some simple deductions, modifications or substitutions can be made.
Claims
1. A method for processing a data stream, characterized in that: The method comprises: The first applet sends a remote message of a topic to the proxy server through a first long connection channel pre-established with the proxy server; the remote message includes a message ID, message content, and message parameters; At least one second applet sends a subscription request to the proxy server through a second persistent connection channel pre-established with the proxy server; the subscription request includes a topic of a remote message to be subscribed; After receiving a remote message of a subject sent by the first applet, the proxy server sends the remote message of the subject to the message proxy system for storage through a third long connection channel pre-established with the message proxy system; The proxy server obtains the remote message of the topic from the message proxy system through the third long connection channel, determines the target second applet that has subscribed to the topic according to the topic of the remote message, and pushes the remote message to the target second applet through the second long connection channel between the target second applet.
2. The method according to claim 1, characterized in that The first applet and the second applet are edited by a preset editor; the method further includes: After receiving the message content and message parameters set by the user to be published, the first applet edited by the preset editor adds the message content and message parameters to be published by the first applet through the background server, and generates the message ID corresponding to the message content through the background server to obtain a remote message of a topic; wherein the message ID is a unique identifier of the message content; The backend server stores the remote messages of each topic and obtains a remote message list; wherein one topic corresponds to at least one remote message.
3. The method according to claim 2, characterized in that Before the first applet sends a remote message of a topic to the proxy server through a first long connection channel pre-established with the proxy server, the method further includes: The first applet obtains at least one remote message from the remote message list; The first applet sends a remote message of a topic to the proxy server through a first persistent connection channel pre-established with the proxy server, including: The first applet sends at least one remote message of a topic to the proxy server through a first long connection channel pre-established with the proxy server to publish at least one remote message of the topic.
4. The method according to claim 3, characterized in that The proxy server receives the remote message published by the first applet asynchronously with pushing the remote message to the target second applet.
5. The method according to any one of claims 1 to 3, characterized in that The data format of the remote message is JSON format.
6. The method according to any one of claims 1 to 3, characterized in that The transmission protocols of the first long connection channel and the second long connection channel are the same; the transmission protocols of the first long connection channel and the third long connection channel are different; Each of the remote messages corresponds to one of the first long connection channels and one of the third long connection channels.
7. The method according to any one of claims 1 to 3, characterized in that The proxy server obtains the remote message of the topic from the message proxy system through the third long connection channel, including: At a preset time interval, the proxy server obtains the remote message of the topic from the message proxy system through the third long connection channel.
8. A proxy server, characterized in that: include: A communication module, configured to establish a first persistent connection channel with a first applet, and receive a remote message of a topic sent by the first applet through the first persistent connection channel; establish a second persistent connection channel with at least one second applet, and receive a subscription request sent by the at least one second applet through the second persistent connection channel; Processing modules for: After receiving a remote message of a topic sent by the first applet, add the remote message of the topic to a consumer group corresponding to the same topic to obtain consumer group data; send the consumer group data to the message proxy system for storage through a third long connection channel pre-established with the message proxy system; The consumer group data is obtained from the message proxy system through the third long connection channel, and the target second applet subscribed to the topic is determined according to the topic and message ID in the consumer group data; through the communication module, the remote message is pushed to the target second applet through the second long connection channel between the target second applet.
9. A data stream processing system, characterized in that: It includes a first applet, at least one second applet, a proxy server, and a message proxy system; The first applet is used to send a remote message of a subject to the proxy server through a first persistent connection channel pre-established with the proxy server; the remote message includes a message ID, message content, and message parameters; The at least one second applet is used to send a subscription request to the proxy server through a second persistent connection channel pre-established with the proxy server; The subscription request includes the subject of the remote message to be subscribed; The proxy server is configured to, after receiving a remote message of a subject sent by the first mini-program, send the remote message of the subject to the message proxy system through a third long connection channel pre-established with the message proxy system for storage; obtain the remote message of the subject from the message proxy system through the third long connection channel, determine a target second mini-program subscribed to the subject according to the subject of the remote message, and push the remote message to the target second mini-program through a second long connection channel between the target second mini-program and the proxy server; The message proxy system is used to receive and store the remote message of the topic sent by the proxy server.
10. A computer program product comprising a computer program and / or instructions, characterized in that: When the computer program and / or the instructions are executed by a processor, the method according to any one of claims 1 to 7 is implemented.