A message push management method and system
By configuring switches and multiple message queues in a computer system, and combining message sending and receiving strategies, the problem of frequent messages receiving or missed messages in the prior art is solved, and orderly forwarding and effective control of messages is achieved.
Patent Information
- Application Number
- CN202211433280.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-16
- Publication Date
- 2025-07-01
- Estimated Expiration
- 2042-11-16
AI Technical Summary
The lack of reasonable message push strategies in existing computer systems, which leads to frequent user reception of certain specific business messages or messages being lost, there are problems of missing messages and reissue, and lack of a mechanism for handling message exceptions.
By configuring the switch and multiple message queues, the messages of each service feature correspond to a message queue. The forwarding server pushes the message into the corresponding message queue according to the service feature, and the pushing server selects a message channel for pushing according to the message sending policy, and the client authenticates and receives messages through the message receiving policy.
It effectively avoids frequent reception of invalid messages and missed messages, ensures orderly forwarding of messages, controls message data traffic and data flow, and provides a mechanism for handling message exceptions.
Smart Images

Figure CN116033007B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of big data technology, and particularly to a message push management method and system. Background Art
[0002] With the development of Internet communication, communication devices have gradually become diversified. In the early days, the network communication method mainly based on the PC side. Now, the communication method of mobile communication devices has become the mainstream. The information exchange between people is not limited to phone calls and text messages. Internet-based methods such as email, mobile APPs, and instant messaging software have become more common.
[0003] In the existing computer system, instant message push mainly pushes to specific user clients. For example, the PC client can receive the notification messages sent by the system in a timely manner, and the notification method is also relatively single, just a simple text description. Users have no way to control whether to accept the notification messages with specified service characteristics. In the existing computer system, due to the lack of a reasonable push strategy for message push, users will receive certain specific service messages frequently. On the contrary, user messages are lost, and there are problems of message omission and reissuance, lacking a reasonable mechanism for handling message anomalies. Summary of the Invention
[0004] In view of the above problems, this application provides a message push management method for solving the above technical problems of frequent message reception or omission.
[0005] To achieve the above object, the inventor provides a message push management method, including the following steps:
[0006] Configure a switch and multiple message queues, where the message queues are bound to the switch. The messages have service characteristics and service permission identifiers, and each type of message with a service characteristic corresponds to one of the message queues;
[0007] The forwarding server receives the messages, identifies the service characteristics of the messages, and pushes the messages into the corresponding message queues according to the service characteristics for pushing;
[0008] The push server receives the messages pushed by the message queues, and selects a message channel to push the messages according to the message sending strategy. The message channels include any one or more of WeChat service accounts, APP mobile terminals, PC clients, and email. The message sending strategy sets push permissions for different message channels according to the service characteristics, and the message channels only push the messages that meet their push permissions to control the data flow and data direction of the messages;
[0009] The client authenticates the message through a message receiving policy and receives the message that passes the authentication. The message receiving policy includes querying whether the permissions of the message channel match the service characteristics of the message.
[0010] In some technical solutions, the message push management method further includes the steps of:
[0011] The client sends a long connection request, and the gateway server authenticates the long connection request; after the authentication passes, the client establishes a long connection with the push server.
[0012] In some technical solutions, the message push management method further includes the steps of:
[0013] The push server collects the operations of the client on the messages with different service characteristics received through different message channels. The operations include any one or more of reading, collecting, deleting, and blocking.
[0014] Analyze the acceptance degree of the client for messages with different message channels and different service characteristics according to the operations, and actively adjust the push permissions of different message channels for different service characteristics according to the acceptance degree.
[0015] In some technical solutions, the message push management method further includes the steps of:
[0016] Set up an error message queue to receive the messages that fail to be pushed by the message channel;
[0017] And send a prompt message to the background administrator for timely processing.
[0018] In some technical solutions, the message push management method further includes the steps of:
[0019] Create a buffer;
[0020] Temporarily store the messages pushed out by the forwarding server in the buffer;
[0021] Automatically create a table according to a time period, and batch-read messages from the buffer and store them in the database by sub-tables.
[0022] In some technical solutions, the forwarding server is provided with a thread pool. The thread pool uses the method of multi-thread reuse to receive each message, assigns a unique identifier and a timestamp to the message, and includes the message in a counter for traffic statistics.
[0023] In some technical solutions, the push server is deployed and run with multiple instances, and the gateway server configures a load balancing policy for routing.
[0024] In some technical solutions, the mapping relationship of the service permission identifier is stored in the cache, and the push server pushes the message to the specified user client through the push channel according to the mapping relationship of the service permission identifier in an asynchronous manner.
[0025] In some technical solutions, the message push management method further includes the steps of:
[0026] Dynamically configure different message templates according to different service characteristics. The message template includes dynamic parameters, and the dynamic parameters will be converted into the specific value content of the fields during the push process;
[0027] Create the mapping relationship between the message template, the service characteristics, and the message channel, and synchronize the mapping relationship to the client cache;
[0028] When the client receives the message, the client selects the corresponding message template according to the mapping relationship to display the content of the message;
[0029] The message template configures a regular expression using a function: Topology node: {topoName}, Time: {createTime}, Node information: {extInfo:source}; where "{}” The content included is the predictable message service fields in the message, and ":" represents the sub-node relationship symbol.
[0030] To solve the above technical problems, the present invention also provides another technical solution:
[0031] A message push management system, including: a switch, a forwarding server, a push server, and a client;
[0032] The switch is bound with multiple message queues. The message has service characteristics and service permission identifiers, and each message with a service characteristic corresponds to one of the message queues;
[0033] The forwarding server is used to receive the message, identify the service characteristics of the message, and push the message into the corresponding message queue according to the service characteristics for pushing;
[0034] The push server is used to receive the message pushed by the message queue and select a message channel to push the message according to the message sending policy. The message channels include any one or more of a WeChat service account, an APP mobile terminal, a PC client, and an email. The message sending policy sets push permissions for different message channels according to the service characteristics, and the message channels only push messages that meet their push permissions to control the data traffic and data flow of the messages;
[0035] The client is used to authenticate messages through a message reception policy and receive the messages that pass the authentication. The message reception policy includes querying whether the permissions of the message channel match the service characteristics of the message.
[0036] Different from the prior art, the above technical solution respectively sets up a plurality of corresponding message queues according to the service characteristics of the messages. The forwarding server pushes the messages to the push server through the message queues, so as to ensure that the messages are forwarded to the push server in an orderly manner by classification. And in the push server, the message channel is selected according to the message sending policy to push the message, where the message channel only pushes the messages that meet its push permissions to control the data flow and data flow direction of the messages; and the client authenticates the messages through the message reception policy, queries whether the permissions of the message channel match the service characteristics of the message, and only receives the messages whose permissions and characteristics match. Thus, by combining the message reception policy with the message sending policy, it effectively avoids frequently receiving invalid messages and avoids missed messages on the client side.
[0037] In some embodiments, the push server collects the operations of the client on the messages with different service characteristics received through different message channels, analyzes the acceptance degree of the client for different message channels and messages with different service characteristics according to the operations, and actively adjusts the push permissions of different message channels for different service characteristics according to the acceptance degree. Through such a design in these embodiments, the changes of the client can be monitored in real time, and the push permissions of the message channels for different service characteristics can be actively and timely adjusted, so that invalid messages can be filtered out according to the changes of the client in the first time.
[0038] The above relevant records of the invention content are only an overview of the technical solution of this application. In order to enable those of ordinary skill in the art to more clearly understand the technical solution of this application, and then can be implemented according to the content recorded in the text of the specification and the drawings, and in order to make the above objects, other objects, features and advantages of this application more easily understood, the following is described in conjunction with the specific embodiments of this application and the drawings. Description of the Drawings
[0039] The drawings are only used to show the principles, implementation methods, applications, features and effects of the specific embodiments of the present invention and other related contents, and should not be considered as a limitation to this application.
[0040] In the drawings of the specification:
[0041] Figure 1 It is a flowchart of the message push management method described in the specific embodiment;
[0042] Figure 2 It is a flowchart of adjusting the push permissions described in the specific embodiment;
[0043] Figure 3 Flowchart of the message forwarding by the forwarding server described in the specific implementation manner;
[0044] Figure 4 Schematic diagram of the message push management system described in the specific implementation manner;
[0045] Figure 5 Schematic diagram of each queue in the specific implementation manner;
[0046] The reference numerals involved in the above-mentioned drawings are explained as follows:
[0047] 100, Registration center server;
[0048] 200, Forwarding server;
[0049] 300, Push server;
[0050] 400, Storage database;
[0051] 500, Gateway server;
[0052] 10, Message queue;
[0053] 20, Persistent queue;
[0054] 30, Error message queue; Specific implementation manner
[0055] To describe in detail the possible application scenarios, technical principles, specific implementable solutions, achievable purposes and effects of this application, etc., the following will be described in detail with reference to the specific examples listed and in conjunction with the drawings. The embodiments described herein are only used to more clearly illustrate the technical solutions of this application, so they are only examples and cannot be used to limit the protection scope of this application.
[0056] Referring to "embodiment" herein means that the specific features, structures or characteristics described in connection with the embodiment may be included in at least one embodiment of this application. The term "embodiment" appearing at various positions in the specification does not necessarily refer to the same embodiment, nor does it particularly limit its independence or relevance to other embodiments. In principle, in this application, as long as there is no technical contradiction or conflict, the technical features mentioned in each embodiment can be combined in any way to form corresponding implementable technical solutions.
[0057] Unless otherwise defined, the meanings of the technical terms used herein are the same as those commonly understood by those skilled in the technical field to which this application belongs; the use of the relevant terms herein is only for describing specific embodiments and is not intended to limit this application.
[0058] In the description of the present application, the term "and / or" is an expression used to describe the logical relationship between objects, indicating that there can be three relationships. For example, A and / or B means: there is A, there is B, and there is both A and B at the same time. In addition, the character " / " in this text generally represents an "or" logical relationship between the associated objects before and after.
[0059] In the present application, terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual quantitative, primary-secondary or sequential relationships between these entities or operations.
[0060] Without further limitation, in the present application, the open expressions such as "comprising", "including", "having" or other similar expressions used in a statement are intended to cover non-exclusive inclusion. These expressions do not exclude that there may be additional elements in the process, method or product including the said elements, so that the process, method or product including a series of elements may not only include those defined elements, but also include other elements not explicitly listed, or also include elements inherent to such process, method or product.
[0061] Similar to the understanding in the "Examination Guidelines", in the present application, expressions such as "greater than", "less than", "exceeding" are understood as not including the number itself; expressions such as "above", "below", "within" are understood as including the number itself. In addition, in the description of the embodiments of the present application, the meaning of "a plurality of" is two or more (including two). Similar expressions related to "many", such as "multiple groups", "multiple times", etc., are understood in this way unless otherwise specifically defined.
[0062] In the description of the embodiments of the present application, the spatially related expressions used, such as "center", "longitudinal", "transverse", "length", "width", "thickness", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "perpendicular", "top", "bottom", "inner", "outer", "clockwise", "counterclockwise", "axial", "radial", "circumferential", etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the specific embodiment or the drawing. It is only for the convenience of describing the specific embodiments of the present application or for the reader's understanding, rather than indicating or implying that the device or component referred to must have a specific position, a specific orientation, or be constructed or operated in a specific orientation. Therefore, it should not be construed as a limitation to the embodiments of the present application.
[0063] Unless otherwise clearly specified or defined, in the description of the embodiments of the present application, the terms such as "installation", "connection", "linkage", "fixation", "setting" and the like shall be understood in a broad sense. For example, the "connection" may be a fixed connection, a detachable connection, or an integral setting; it may be a mechanical connection, an electrical connection, or a communication connection; it may be a direct connection, or an indirect connection through an intermediate medium; it may be the communication between two components or the interaction relationship between two components. For those skilled in the art to which the present application pertains, the specific meanings of the above terms in the embodiments of the present application can be understood according to specific circumstances.
[0064] Please refer to Figures 1 to 5 , this embodiment provides a message push management method for solving the above technical problems of frequent message reception or missed message sending.
[0065] As Figure 1 shown, the message push management method includes the following steps:
[0066] S101. Configure a switch and multiple message queues, where the message queues are bound to the switch, the messages have service characteristics and service permission identifiers, and the messages of each service characteristic correspond to one of the message queues;
[0067] S102. The forwarding server receives the messages, identifies the service characteristics of the messages, and pushes the messages into the corresponding message queues according to the service characteristics for pushing;
[0068] S103. The push server receives the messages pushed by the message queues, and selects a message channel to push the messages according to the message sending policy. The message channels include any one or more of a WeChat service account, an APP mobile terminal, a PC client, and an email. The message sending policy sets push permissions for different message channels according to the service characteristics, and the message channels only push the messages that meet their push permissions to control the data flow and data direction of the messages;
[0069] S104. The client discriminates the messages through a message reception policy and receives the messages that pass the discrimination. The message reception policy includes querying whether the permissions of the message channels match the service characteristics of the messages.
[0070] The forwarding server 200 configures the switch with basic functions, completes the message channel test, creates a unique identifier and a timestamp for the messages, and performs message traffic statistics. In step S101, each message has corresponding service characteristics (where the service characteristics include:), as Figure 5 shown, and enters the message queue 10 of the specified service characteristic for pushing according to the service characteristics.
[0071] The push server 300 mentioned above is a downstream server. The push server 300 is used to monitor the message queue, and this message queue is the queue bound by the switch created by the forwarding server 200. As the push server side, the push server 300 will bear a high load of long connections of clients. The push server 300 supports multi-instance deployment and operation, and the load balancing strategy is configured by the routing configuration of the gateway service module.
[0072] The push server 300 is used to receive the messages forwarded by the message queue of the forwarding server 200 and implement the message push function for multiple message channels including WeChat service accounts, APP mobile terminals, PC clients, and email. The push server 300 includes a channel switch for message push. Each message channel is provided with a corresponding channel switch, and the message channel can be turned on or off through the channel switch. When the push server 300 performs message push, it configures the push permissions of message channels such as WeChat service accounts, mobile APPs, PC clients, and email according to business characteristics, so as to effectively control the data flow and data direction of messages.
[0073] Among them, as Figure 4 shown, a registration center server 100 is established in advance. The registration center server 100 is used to manage the forwarding server 200 and store the running states of the database 400, the push server 300, and the gateway server 500. The message push management system can be a distributed system, and the registration center server 100 is also the basic service module of the distributed system.
[0074] In some embodiments, the forwarding server 200 is provided with a thread pool. The thread pool uses the method of multi-thread reuse to receive each of the messages, assigns a unique identifier and a timestamp to the message, and includes the message in a counter for traffic statistics. The thread pool adopts a multi-thread asynchronous push method. The system initializes a singleton of a thread pool with a fixed size. The thread pool quickly processes the message service logic and asynchronously pushes the message queue, thereby reducing the delay of message push.
[0075] The push server 300 adopts multi-instance deployment and operation, and the load balancing strategy is configured by the routing configuration of the gateway server 500.
[0076] The client is provided with a message receiving policy. The message receiving policy queries whether the message channel corresponding to the received message has the permission to push messages to the client, and only receives the messages pushed by the message channels with permissions, and rejects the messages pushed by the message channels without permissions. And the message receiving policy can configure the business characteristics of the messages it pays attention to in a switch mode.
[0077] In the above embodiments, a plurality of corresponding message queues are respectively set according to the type service characteristics of messages. The forwarding server 200 pushes messages to the push server 300 through the message queues, so as to ensure that the messages are forwarded to the push server 300 in an orderly manner by classification. And in the push server 300, a message channel is selected according to the message sending policy to push the message, wherein the message channel only pushes messages that meet the messages within its push permission to control the data traffic and data flow direction of the messages; and the client discriminates the messages through the message receiving policy, and queries whether the permission of the message channel matches the service characteristics of the message, and only receives messages whose permission and characteristics match. Thus, by combining the message receiving policy and the message sending policy, it is effectively avoided to frequently receive invalid messages and avoid missing messages on the client side.
[0078] As Figure 2 shown, in some embodiments, the message push management method further includes the steps of:
[0079] S201. The push server 300 collects the operations of the client on messages with different service characteristics received through different message channels, where the operations include any one or more of reading, collecting, deleting, and blocking;
[0080] S202. Analyze the acceptance degree of the client for different message channels and messages with different service characteristics according to the operations, and actively adjust the push permissions of different message channels for different service characteristics according to the acceptance degree.
[0081] In this embodiment, the acceptance degree of messages with service characteristics, and actively adjust the push permissions of different message channels for different service characteristics according to the acceptance degree. Through such a design in these embodiments, the changes of the client can be monitored in real time, and the push permissions of the message channels for different service characteristics can be actively and timely adjusted, so that invalid messages can be filtered out according to the changes of the client in the first time.
[0082] As Figure 3 shown, in some embodiments, the message push management method further includes the steps of:
[0083] S301. Create a buffer;
[0084] S302. Temporarily store the messages pushed out by the forwarding server in the buffer;
[0085] S303. Automatically create a table according to a time period, and batch read messages from the buffer and store them in the database by sub-tables.
[0086] In the above-described embodiments, a storage database 400 (i.e., a persistence service module) is further provided for storing the messages pushed out by the message queue in the forwarding server 200. The storage database 400 receives the messages pushed out by the queue messages of the forwarding server 200, and the storage database 400 creates a buffer, automatically creates tables according to a time period, batches the message data and persists it in the database, and stores it in separate tables. As Figure 5 shown, a persistence queue 20 is provided, and the messages pushed out by the queue messages of the forwarding server 200 enter the persistence queue 20, and then are read out through the persistence queue 20 and stored in the storage database 400.
[0087] The storage database 400 listens to the specified message queue and asynchronously batches and stores the messages forwarded by the message queue. And the storage database 400 opens a query interface to provide a user query entry.
[0088] The message push management method further includes the steps of: the client sends a long connection request, and the gateway server 500 authenticates the long connection request; after the authentication is passed, the client establishes a long connection with the push server 300. The gateway server 500 authenticates the long connection request of the client and processes cross-domain requests. Valid messages will be pushed to the corresponding user clients, and the gateway server 500 is also used to authenticate the validity of the request when querying the messages in the storage database 400.
[0089] In some embodiments, the message push management method further includes the steps of:
[0090] setting up an error message queue for receiving the messages that the message channel fails to push;
[0091] and sending a prompt message to the background administrator for timely processing.
[0092] As Figure 5 shown, in the above-described embodiments, an error message queue 30 is provided, and the push process of all messages will be recorded in the log. The log includes the results after successful push and the stack information of the exceptions that occur during the push. At the same time, the information of the push exceptions enters the error message queue and waits to be processed.
[0093] The user system is a parallel system, which is relatively decoupled in business logic. When the user permission relationship of the user system changes, it is necessary to notify the message push system in time to update the cached permission mapping relationship in time.
[0094] In some embodiments, the mapping relationship of the service permission identifiers is stored in the cache, and the push server 300 pushes the messages to the specified user clients through the push channel according to the mapping relationship of the service permission identifiers in an asynchronous manner.
[0095] In some embodiments, the message push management method further includes the steps of:
[0096] Dynamically configure different message templates according to different service characteristics. The message templates include dynamic parameters, and the dynamic parameters will be converted into specific value contents of fields during the push process;
[0097] Create a mapping relationship between the message template, the service characteristics, and the message channel. The mapping relationship is synchronized to the client cache;
[0098] When the client receives the message, the client selects the corresponding message template according to the mapping relationship to display the content of the message.
[0099] When the information of the message template is modified, the modified message template is synchronously updated to the cache of the client.
[0100] The message template configures a regular expression using a function: Topology node: {topoName}, Time: {createTime}, Node information: {extInfo:source}; where "{}” The content included is the predictable message service fields in the message, and ":" represents the sub-node relationship symbol. In this embodiment, by configuring the service relationship between the service fields and the template, different services display different styles of message content, and for different message channels, different message templates are configured, and different styles of message content can also be received through different channels.
[0101] To solve the above technical problems, the present invention also provides another technical solution:
[0102] As Figure 4 shown, a message push management system includes: a switch, a forwarding server 200, a push server, and a client;
[0103] The switch is bound with multiple message queues. The messages have service characteristics and service permission identifiers, and the messages of each service characteristic correspond to one of the message queues;
[0104] The forwarding server 200 is used to receive the message, identify the service characteristics of the message, and push the message into the corresponding message queue according to the service characteristics for pushing;
[0105] The push server is used to receive the messages pushed by the message queue, and select a message channel to push the messages according to the message sending policy. The message channels include any one or more of the WeChat service account, the APP mobile terminal, the PC client, and the email. The message sending policy sets push permissions for different message channels according to the service characteristics, and the message channels only push the messages that meet their push permissions to control the data traffic and data flow of the messages;
[0106] The client is used to authenticate the messages through the message receiving policy and receive the messages that pass the authentication. The message receiving policy includes querying whether the permissions of the message channel match the service characteristics of the messages.
[0107] The forwarding server 200 configures the switch with basic functions, completes the message channel test, creates a unique identifier and a timestamp for the messages, and performs message traffic statistics. In step S101, each message has corresponding service characteristics, such as Figure 5 shown, and enters the message queue 10 with the specified service characteristics for pushing.
[0108] The push server mentioned above is a downstream server. The push server is used to monitor the message queue, and this message queue is the queue bound by the switch created by the forwarding server 200. As the push server side, it will bear a high client long connection load. The push server mentioned above supports multi-instance deployment and operation, and the routing configuration of the gateway service module has a load balancing strategy.
[0109] The message push management system further includes a registration center server 100. The registration center server 100 is used to manage the forwarding server 200 and store the running status of the database 400, the push server, and the gateway server 500. The message push management system can be a distributed system, and the registration center server 100 is also the basic service module of the distributed system.
[0110] The forwarding server 200 is provided with a thread pool. The thread pool uses the method of multi-thread reuse to receive each message, assigns a unique identifier and a timestamp to the message, and includes the message in a counter for traffic statistics. The thread pool adopts a multi-thread asynchronous push method. The system initializes a thread pool singleton with a fixed size. The thread pool quickly processes the message service logic and asynchronously pushes the message queue, thereby reducing the delay of message pushing. The push server adopts multi-instance deployment and operation, and the routing configuration of the gateway server 500 has a load balancing strategy.
[0111] A storage database 400 (i.e., a persistence service module) is used to store the messages pushed out by the message queue in the forwarding server 200. The storage database 400 receives the messages pushed out by the queue messages of the forwarding server 200, and the storage database 400 creates a buffer, automatically creates tables according to a time period, batches the message data and persists it in the database, and stores it in separate tables. As Figure 5 shown, a persistence queue 20 is provided. The messages pushed out by the queue messages of the forwarding server 200 enter the persistence queue 20, and then are read out through the persistence queue 20 and stored in the storage database 400.
[0112] The gateway server 500 authenticates the long connection requests of the client and processes cross-domain requests. Valid messages will be pushed to the corresponding user clients, and the gateway server 500 is also used to authenticate the validity of the authentication requests when querying the messages in the storage database 400.
[0113] In the above embodiments, a plurality of corresponding message queues are respectively set according to the type service characteristics of the messages. The forwarding server 200 pushes messages to the push server through the message queues, so as to ensure that the messages are forwarded to the push server in an orderly manner by classification, and in the push server, the message channels are selected according to the message sending policy to push the messages, wherein the message channels only push the messages within their push permissions to control the data traffic and data flow direction of the messages; and the client discriminates the messages through the message receiving policy, and queries whether the permissions of the message channels match the service characteristics of the messages, and only receives the messages whose permissions match the characteristics. Thus, by combining the message receiving policy and the message sending policy, it effectively avoids frequently receiving invalid messages and avoids missed reception of client messages.
[0114] Finally, it should be noted that although the above embodiments have been described in the text and drawings of the specification of the present application, the patent protection scope of the present application cannot be limited thereby. Any technical solutions obtained by equivalent structure or equivalent process substitution or modification based on the essential concept of the present application and using the content recorded in the text and drawings of the specification of the present application, as well as those directly or indirectly implementing the technical solutions of the above embodiments in other related technical fields, are included in the patent protection scope of the present application.
Claims
1. A message push management method, characterized in that, It includes the following steps: Configure a switch and multiple message queues. The message queues are bound to the switch. The messages have service characteristics and service permission identifiers, and each type of message with a service characteristic corresponds to one of the message queues; The forwarding server receives the messages, identifies the service characteristics of the messages, and pushes the messages into the corresponding message queues according to the service characteristics for pushing; The push server receives the messages pushed by the message queues and selects a message channel to push the messages according to a message sending policy. The message channels include any one or more of a WeChat service account, an APP mobile terminal, a PC client, and an email. The message sending policy sets push permissions for different message channels according to the service characteristics, and the message channels only push messages that meet their push permissions to control the data traffic and data flow of the messages; The client authenticates the messages through a message receiving policy and receives the messages that pass the authentication. The message receiving policy includes querying whether the permissions of the message channels match the service characteristics of the messages; It also includes the steps: The push server collects the operations of the client on the messages with different service characteristics received through different message channels. The operations include any one or more of reading, collecting, deleting, and blocking; Analyze the acceptance degree of the client for different message channels and messages with different service characteristics according to the operations, and actively adjust the push permissions of different message channels for different service characteristics according to the acceptance degree.
2. The message push management method according to claim 1, wherein It also includes the steps: The client sends a long connection request, and the gateway server authenticates the long connection request; after the authentication passes, the client establishes a long connection with the push server.
3. The message push management method according to claim 1, wherein It also includes the steps: Set up an error message queue to receive the messages that fail to be pushed by the message channels; And send a prompt message to the background administrator for timely processing.
4. The message push management method according to claim 1, wherein It also includes the steps: Create a buffer; Temporarily store the messages pushed out by the forwarding server in the buffer; Automatically create tables according to a time period, and batch read messages from the buffer and store them in the database in separate tables.
5. The message push management method according to claim 1, wherein The forwarding server is provided with a thread pool. The thread pool uses a multi-threaded reuse method to receive each message, assigns a unique identifier and a timestamp to the message, and includes the message in a counter for traffic statistics.
6. The message push management method according to claim 2, wherein The push server is deployed and run with multiple instances, and the gateway server configures a load balancing strategy for routing.
7. The message push management method according to claim 1, wherein, The mapping relationship of the service permission identifiers is stored in the cache. The push server pushes the messages to the specified user clients through the push channels according to the mapping relationship of the service permission identifiers and in an asynchronous manner.
8. The message push management method according to claim 1, wherein It also includes the steps: Dynamically configure different message templates according to different service characteristics. The message templates include dynamic parameters, and the dynamic parameters will be converted into the specific value content of the fields during the push process; Make the mapping relationship between the message templates, the service characteristics, and the message channels, and synchronize the mapping relationship to the client cache; When the client receives the message, the client selects the corresponding message template according to the mapping relationship to display the content of the message; The message template uses function configuration regular expressions: Topology node: {topoName}, Time: {createTime}, Node information: {extInfo:source}; where " {} ” the content included in is the predictable message service field in the message, and ":" represents the sub-node relationship symbol.
9. A message push management system, characterized in that, Including: A switch, a forwarding server, a push server and a client; The switch is bound with multiple message queues. The message has a service feature and a service permission identifier, and each message with a service feature corresponds to one of the message queues; The forwarding server is used to receive the message, identify the service feature of the message, and push the message into the corresponding message queue according to the service feature; The push server is used to receive the message pushed by the message queue and select a message channel to push the message according to the message sending policy. The message channels include any one or more of a WeChat service account, an APP mobile terminal, a PC client, and an email. The message sending policy sets push permissions for different message channels according to the service feature, and the message channel only pushes messages that meet its push permissions to control the data traffic and data flow of the message; The client is used to authenticate the message through a message receiving policy and receive the message that passes the authentication. The message receiving policy includes querying whether the permission of the message channel matches the service feature of the message; The push server collects the operations of the client on messages with different service features received through different message channels. The operations include any one or more of reading, collecting, deleting, and blocking; Analyze the acceptance degree of the client for messages with different message channels and different service features according to the operations, and actively adjust the push permissions of different message channels for different service features according to the acceptance degree.
Citation Information
Patent Citations
Method and device for processing information of uniform resource identifier (URI) indexes
CN102045323A
High-concurrency distributed message pushing system and method
CN111371892A
Information pushing method and system based on cloud computing and big data, and financial server
CN113051345A