Message sending method, electronic device, and storage medium
By determining the current status and priority of the message middleware, the forwarding flexibility and low efficiency of the message sending system are solved, and more efficient message queue transmission is achieved.
Patent Information
- Application Number
- PCT/IB2025/050075
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-16
- Filing Date
- 2025-01-03
- Publication Date
- 2025-07-24
AI Technical Summary
In the prior art, when the message sending system uses message middleware to forward the message queue, there are problems of poor forwarding flexibility and low efficiency, especially when the message middleware fails, it may lead to multiple forwarding and waste of time.
By obtaining the current state of the message middleware, including the connection status and the running status, the sending priority of the message queue, and sending the message queue in priority order, to improve the sending efficiency.
Improve the stability and efficiency of the message sending system, avoiding long waits and other queue sending failures due to poor message middleware status.
Smart Images

Figure IB2025050075_24072025_PF_FP_ABST
Abstract
Description
[0001] TECHNICAL FIELD The present disclosure relates to the field of information processing, and more specifically, to a message sending method, electronic device, and storage medium. Background When communication messages are exchanged between different systems, message middleware is typically used to forward these messages to improve communication efficiency between the different systems. However, message sending systems typically directly forward received message queues using message middleware. When the message middleware fails, the message middleware may forward the same message queue multiple times, wasting a significant amount of time. This results in poor forwarding flexibility and low forwarding efficiency when using message middleware to forward message queues in current message sending systems. Currently, no effective solution has been proposed to address the aforementioned issues. SUMMARY OF THE INVENTION Embodiments of the present disclosure provide a message sending method, electronic device, and storage medium to at least address the technical problem of low message queue sending efficiency in related technologies. According to one aspect of an embodiment of the present disclosure, a message sending method is provided, comprising: obtaining multiple message queues received by at least one message middleware; determining a current state of the at least one message middleware, wherein the current state includes at least one of the following: a connection state and an operation state, the connection state being used to indicate whether the connection between the message middleware and the client is normal, and the operation state being used to indicate whether the message middleware is operating normally; determining sending priorities of the multiple message queues based on the current state of the at least one message middleware; and using the at least one message middleware to send the multiple message queues to a target client according to the sending priorities. According to another aspect of an embodiment of the present disclosure, a message sending method is further provided, comprising: in response to an input instruction applied on an operation interface, displaying on the operation interface a plurality of message queues received by at least one message middleware; in response to a sending instruction applied on the operation interface, displaying on the operation interface a sending result of the message queue, wherein the sending result is used to represent a result of sending the plurality of message queues according to a sending priority based on the at least one message middleware, the sending priority being determined based on a current state of the at least one message middleware, the current state including at least one of the following: a connection state and a running state, the connection state being used to represent whether the connection between the message middleware and the client is normal, and the running state being used to represent whether the message middleware is running normally.According to another aspect of an embodiment of the present disclosure, a message sending method is provided, comprising: obtaining multiple message queues received by at least one message middleware by calling a first interface, wherein the first interface includes a first parameter, the parameter value of the first parameter including the message queue; determining the current state of the at least one message middleware, wherein the current state includes at least one of the following: a connection state and an operation state, wherein the connection state indicates whether the message middleware and the client are properly connected, and the operation state indicates whether the message middleware is operating properly; determining the sending priorities of the multiple message queues based on the current state of the at least one message middleware; using the at least one message middleware to send the multiple message queues to a target client according to the sending priorities; and outputting the sending results of the message queues by calling a second interface, wherein the second interface includes a second parameter, the parameter value of the second parameter including the sending results. According to another aspect of an embodiment of the present disclosure, an electronic device is provided, comprising: a memory storing an executable program; and a processor for executing the program, wherein any of the above methods is executed when the program is executed. According to another aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided. The computer-readable storage medium includes a stored executable program, wherein when the executable program is executed, the device containing the computer-readable storage medium is controlled to execute any of the aforementioned methods. In this embodiment of the present disclosure, a method is employed to obtain multiple message queues received by at least one message middleware; determine the current state of at least one message middleware; determine the sending priorities of the multiple message queues based on the current state of the at least one message middleware; and use the at least one message middleware to send the multiple message queues to a target client according to the sending priorities. By determining the sending priorities of the multiple message queues based on the current state of the message middleware corresponding to the message queues, the rationality of the determined order of sending message queues is improved, avoiding situations where a message middleware with a poor current state causes a long time to be spent sending a message queue using that message middleware, resulting in a low message sending rate for other message queues. This improves the efficiency of the message sending system in sending message queues via the message middleware, thereby resolving the technical problem of low message queue sending efficiency in related technologies. It should be noted that the general description above and the detailed description below are merely provided for illustrative purposes and explanation of the present disclosure and do not constitute a limitation of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS The drawings described herein are used to provide a further understanding of the present disclosure and constitute a part of the present disclosure. The illustrative embodiments of the present disclosure and their descriptions are used to explain the present disclosure and do not constitute an improper limitation on the present disclosure.In the accompanying drawings: Figure 1 is a hardware structure block diagram of a computer terminal (or mobile device) for implementing a message sending method according to an embodiment of the present disclosure; Figure 2 is a structure block diagram of a computing environment according to an embodiment of the present disclosure; Figure 3 is a structure block diagram of a service grid according to an embodiment of the present disclosure; Figure 4 is a flow chart of a message sending method according to an embodiment of the present disclosure; Figure 5 is a schematic diagram of a message sending process according to an embodiment of the present disclosure; Figure 6 is a schematic diagram of a client selecting a message middleware according to an embodiment of the present disclosure; Figure 7 is a schematic diagram of another client selecting a message middleware according to an embodiment of the present disclosure; Figure 8 is a flow chart of a message sending method according to an embodiment of the present disclosure; Figure 9 is a flow chart of a message sending method according to an embodiment of the present disclosure; Figure 10 is a structure block diagram of a message sending device according to an embodiment of the present disclosure; Figure 11 is a structure block diagram of a message sending device according to an embodiment of the present disclosure; Figure 12 is a structure block diagram of a message sending device according to an embodiment of the present disclosure; Figure 13 is a structure block diagram of an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION To help those skilled in the art better understand the present disclosure, the following will provide a clear and complete description of the technical solutions in the embodiments of the present disclosure, in conjunction with the accompanying drawings. It should be noted that the described embodiments represent only a portion of the embodiments of the present disclosure, and are not exhaustive. All other embodiments derived by persons of ordinary skill in the art based on the embodiments of the present disclosure without inventive effort should fall within the scope of protection of the present disclosure. It should be noted that the terms "first," "second," and so on, in the specification and claims of the present disclosure, and in the accompanying drawings, are used to distinguish similar objects and are not necessarily used to describe a specific order or precedence. It should be understood that such terms are interchangeable where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than that illustrated or described herein. Furthermore, the terms "including," "having," and any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or apparatus comprising a series of steps or components is not necessarily limited to the steps or components expressly listed, but may include other steps or components not expressly listed or inherent to such process, method, product, or apparatus.First, some nouns or terms used in describing the embodiments of this disclosure are explained as follows: Broker: In computer science, a program or service that acts as an intermediary or middleman is a type of message middleware that enables communication between different systems and coordinates data exchange. For example, a message broker is responsible for receiving, forwarding, and routing messages to ensure communication and coordination between different components or systems. Message queue: In computer science, a data structure that can be used to store and access data in a first-in-first-out order. In messaging systems, message queues are primarily used to store and transmit messages to ensure that messages are processed in a certain order. Selection strategy: When a client sends a message, it needs to select a broker and queue to send the message. The selection strategy determines the client's selection and sending behavior. An appropriate selection strategy allows the sender to immediately select a more reliable broker and queue when encountering problems, thereby avoiding being stuck on the original sending action. Reachability: This refers to the smooth connection between the client and the broker. If the connection is broken and the client is inaccessible, it indicates that the broker lacks reachability. Availability: This can refer to the operating status of a broker. A properly functioning broker should be able to receive, process, and respond to messages. If a client fails to send a message due to a link failure, this indicates that the broker lacks availability. Example 1: According to an embodiment of the present disclosure, a message sending method is provided. It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system, such as a set of computer-executable instructions. Furthermore, although a logical sequence is shown in the flowcharts, in some cases, the steps shown or described can be executed in a different order than that shown. The method embodiment provided in Example 1 of the present disclosure can be executed in a mobile terminal, computer terminal, or similar computing device. Figure 1 is a hardware block diagram of a computer terminal (or mobile device) for implementing the message sending method according to an embodiment of the present disclosure. As shown in FIG1 , a computer terminal 10 (or mobile device) may include one or more processors 102 (illustrated as 102 a, 102 b, 102 n in the figure) (the processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 configured to store data, and a transmission device 106 configured to perform communication functions.In addition, the device may also include: a display, an input / output interface (I / O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of a BUS), a network interface, a power supply, and / or a camera. Those skilled in the art will appreciate that the structure shown in FIG1 is merely illustrative and does not limit the structure of the electronic device. For example, the computer terminal 10 may include more or fewer components than shown in FIG1 , or have a configuration different from that shown in FIG1 . It should be noted that the one or more processors 102 and / or other data processing circuits described above may generally be referred to herein as "data processing circuitry." This data processing circuitry may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuitry may be a single independent processing component, or may be fully or partially integrated into any of the other components of the computer terminal 10 (or mobile device). As described in the embodiments of the present disclosure, this data processing circuitry serves as a processor control (e.g., selecting a variable resistor terminal path connected to an interface). Memory 104 can be configured to store software programs and components of application software, such as the program instructions / data storage device corresponding to the message sending method in the embodiments of the present disclosure. Processor 102 executes the software programs and components stored in memory 104 to execute various functional applications and data processing, thereby implementing the aforementioned message sending method. Memory 104 may include high-speed random access memory (RAM) and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, memory 104 may further include memory remote from processor 102, which can be connected to computer terminal 10 via a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof. Transmission device 106 is configured to receive or transmit data via a network. Specific examples of such networks may include a wireless network provided by the communications provider of computer terminal 10. In one embodiment, transmission device 106 includes a network interface controller (NIC), which can be connected to other network devices via a base station to enable communication with the Internet. In one example, the transmission device 106 may be a radio frequency (RF) component configured to communicate with the Internet wirelessly.The display can be, for example, a touchscreen liquid crystal display (LCD), which enables a user to interact with the user interface of the computer terminal 10 (or mobile device). The hardware block diagram shown in FIG1 can serve not only as an exemplary block diagram of the aforementioned computer terminal 10 (or mobile device), but also as an exemplary block diagram of the aforementioned server. In an optional embodiment, FIG2 shows a block diagram of an embodiment using the computer terminal 10 (or mobile device) shown in FIG1 as a computing node in a computing environment 201. FIG2 is a block diagram of a computing environment according to an embodiment of the present disclosure. As shown in FIG2, computing environment 201 includes multiple computing nodes (e.g., servers) (illustrated as 210-1 and 210-2) running on a distributed network. Each computing node includes local processing and memory resources, and an end user 202 can remotely run applications or store data in computing environment 201. Applications can be provided as multiple services 220-1, 220-2, 220-3, and 220-4 in computing environment 201, representing services "A," "D," "E," and "H," respectively. End users 202 can provision and access services through a web browser or other software application on a client. In some embodiments, end users 202's provisioning and / or requests can be provided to an ingress gateway 230. Ingress gateway 230 can include a corresponding agent to handle provisioning and / or requests for services (one or more services provided in computing environment 201). Services are provided or deployed based on various virtualization technologies supported by computing environment 201. In some embodiments, services can be provided based on virtual machines (VMs), container-based virtualization, and / or similar approaches. VM-based virtualization can simulate a real computer by initializing a virtual machine, executing programs and applications without directly accessing any actual hardware resources. While virtual machines virtualize machines, container-based virtualization can launch containers to virtualize entire operating systems (OSs), allowing multiple workloads to run on a single OS instance. In one embodiment of container-based virtualization, several service containers can be assembled into a pod (e.g., a Kubernetes pod). For example, see Figure 2. Pods 240-1, 240-2, and 240-N (collectively referred to as Pods). A Pod may include a proxy 245 and one or more containers.
[0002] 242-1, 242-2, and 242-M (collectively referred to as containers). One or more containers in a pod process requests related to one or more corresponding functions of a service. Proxy 245 typically controls network functions related to the service, such as routing and load balancing. Similar pods may also be deployed for other services. During operation, executing a user request from end user 202 may require invoking one or more services in computing environment 201. Executing one or more functions of one service may require invoking one or more functions of another service. As shown in Figure 2, service "A" 220-1 receives a user request from end user 202 from ingress gateway 230. Service "A" 220-1 may invoke service "D" 220-2, and service "D" 220-2 may request service "E" 220-3 to execute one or more functions. The computing environment described above may be a cloud computing environment, where resource allocation is managed by the cloud service provider, allowing for feature development without having to worry about implementing, adjusting, or scaling servers. This computing environment allows developers to execute code in response to events without building or maintaining complex infrastructure. Instead of expanding a single hardware device to handle potential load, services can be partitioned to complete a set of functions that can be automatically and independently scaled. In another alternative embodiment, FIG3 shows a block diagram of an embodiment using the computer terminal 10 (or mobile device) shown in FIG1 as a service grid. FIG3 is a structural block diagram of a service grid according to an embodiment of the present disclosure. As shown in FIG3 , the service grid 300 is primarily configured to facilitate secure and reliable communication between multiple microservices. Microservices refer to the decomposition of an application into multiple smaller services or instances, distributed across different clusters / machines. As shown in FIG3 , microservices may include application service instance A and application service instance B, which form the functional application layer of service grid 300. In one embodiment, application service instance A runs as a container / process 308 on a machine / workload container group 314 (Pod), and application service instance B runs as a container / process 310 on a machine / workload container group 316 (Pod). In one embodiment, application service instance A may be a product query service, and application service instance B may be a product ordering service. As shown in FIG3 , application service instance A and grid proxy (sidecar) 303 coexist in machine workload container group 314 , and application service instance B and grid proxy 305 coexist in machine workload container 316 .Grid proxy 303 and grid proxy 305 form the data plane layer of service grid 300. Grid proxy 303 and grid proxy 305, respectively running as container / process 304 and container / process 306, can receive requests 312 for product query services. Grid proxy 303 and application service instance A can communicate bidirectionally, while grid proxy 305 and application service instance B can communicate bidirectionally. Furthermore, grid proxy 303 and grid proxy 305 can also communicate bidirectionally with each other. In one embodiment, traffic from application service instance A is routed to the appropriate destination via grid proxy 303, while network traffic from application service instance B is routed to the appropriate destination via grid proxy 305. It should be noted that the network traffic mentioned herein includes, but is not limited to, Hypertext Transfer Protocol (HTTP), Representational State Transfer (REST), the high-performance, general-purpose open source framework (Google Remote Procedure Call, gRPC), the open source in-memory data structure storage system (Redis), and other forms. In one embodiment, the functionality of the extended data plane layer can be implemented by writing custom filters for the proxy (Envoy) in service mesh 300. The service mesh proxy configuration can be designed to enable the service mesh to correctly proxy service traffic and achieve service interoperability and service governance. Mesh proxy 303 and mesh proxy 305 can be configured to perform at least one of the following functions: service discovery, health checking, routing, load balancing, authentication and authorization, and observability. As shown in Figure 3, service mesh 300 also includes a control plane layer. The control plane layer can be a set of services running in a dedicated namespace, hosted by a managed control plane component 301 in a machine / workload container group (machine / pod) 302. As shown in FIG3 , managed control plane component 301 communicates bidirectionally with mesh proxy 303 and mesh proxy 305.Hosted control plane component 301 is configured to perform certain control and management functions. For example, hosted control plane component 301 receives telemetry data transmitted by grid agents 303 and 305 and can further aggregate this telemetry data. In addition to these services, hosted control plane component 301 can also provide user-oriented application programming interfaces (APIs) to facilitate manipulation of network behavior and provide configuration data to grid agents 303 and 305. In the aforementioned operating environment, the present disclosure provides a message sending method as shown in FIG4 . FIG4 is a flowchart illustrating a message sending method according to an embodiment of the present disclosure. As shown in FIG4 , the method includes the following steps: Step S402: Retrieve multiple message queues received by at least one message middleware. The message middleware described above can refer to middleware used to forward communication messages between different systems, and can also refer to broker middleware. The message queues mentioned above may refer to message queues that need to be forwarded by the message middleware and may be composed of communication messages received by the message middleware. For example, the message queues may be divided based on the time at which the message middleware receives the message, or based on the message identifiers of the received message messages. The specific method for dividing the message queues can be selected based on actual circumstances and is not limited here. In an optional solution of this embodiment, to reasonably route message queues received by the message middleware and improve the stability of the message middleware in forwarding communication messages, the message sending system may first obtain multiple message queues received by at least one message middleware. Step S404: Determine the current status of at least one message middleware. The current status includes at least one of the following: connection status and running status. The connection status indicates whether the message middleware and the client are connected properly, and the running status indicates whether the message middleware is operating properly. The above-mentioned current status may refer to a status that can reflect the availability and reachability of the message middleware. The current status of the message middleware may include: connection status and / or running status. Among them, the connection status may refer to whether the connection between the message middleware and the client is normal, for example, whether the client can stably send message queues to the message middleware, and may refer to the reachability of the message middleware; the running status may refer to whether the message middleware is running normally, for example, whether the message queue can be sent normally, and may refer to the availability of the message middleware.In an optional solution of this embodiment, to ensure stable forwarding of message queues using the messaging middleware, the message sending system can determine the current status of the messaging middleware currently used to forward the message queues, specifically whether communication between the messaging middleware and the client is smooth and whether the messaging middleware can stably send the message queues. These statuses can reflect whether the messaging middleware can currently stably send the message queues. Based on this, after obtaining the multiple message queues currently requiring sending, the message sending system can further obtain the current status of the messaging middleware corresponding to each message queue, specifically determining whether the connection between the messaging middleware and the client is smooth and whether the messaging middleware can normally send the message queues. In step S406, based on the current status of at least one messaging middleware, the sending priority of the multiple message queues is determined. In an optional solution of this embodiment, considering that message queues are forwarded by message middleware, and that different message middleware may have different current states, which can reflect whether different message middleware can stably and efficiently send received message queues, if the message queues are sent using the message middleware corresponding to the message queues in a random order or the order in which the message queues were received, the message queues sent using the message middleware may be less stable and less efficient. For example, if message queue A is currently prioritized for sending, and the message middleware A corresponding to message queue A has unstable sending capabilities, such as low message middleware reachability, the message sending system may use message middleware A to repeatedly send message queue A, causing other message queues, such as message queue B and message queue C, to be unable to enter the message sending state. This, in turn, affects the entire message queue sending process, resulting in the message sending system using the message middleware to send message queues with lower stability and efficiency. Therefore, to improve the stability and efficiency of message queue transmission using message middleware, the message sending system can first determine the order in which different message queues are sent, that is, determine the sending priority of multiple message queues. For example, message queues received by message middleware with higher stability may be sent first, followed by message queues received by message middleware with lower stability. Considering that the current status of the message middleware obtained above can effectively reflect whether the message middleware can stably and smoothly send the received message queues, the message sending system can determine the sending priority of the multiple received message queues based on the current status of at least one message middleware obtained.For example, considering that the current state may include a connection state and / or an operational state, when determining the sending priorities of different message queues, a higher priority may be assigned to message queues received by message middleware with stable connection and operational states, a lower priority may be assigned to message queues received by message middleware with only stable connection or operational states, and finally the lowest priority may be assigned to message queues received by message middleware with unstable connection and operational states. This prevents the message sending system from spending too much time sending the lowest-priority message queue, causing the remaining message queues to take too long or fail to send. In step S408, at least one message middleware is used to send the multiple message queues to the target client according to the sending priorities. In an optional solution of this embodiment, after determining the sending priorities of the different message queues, the message sending system may use the corresponding message middleware to send the multiple message queues according to the sending priorities. For example, the message middleware corresponding to the message queue with a higher sending priority may be used to send the message queue, and then the message middleware corresponding to the message queue with a lower sending priority may be used to send the message queue to the target client, thereby ensuring smooth and stable delivery of the message queues. In an embodiment of the present disclosure, a method is adopted in which multiple message queues received by at least one message middleware are obtained; the current state of at least one message middleware is determined; and based on the current state of at least one message middleware, the sending priorities of the multiple message queues are determined; and the multiple message queues are sent to a target client according to the sending priorities by using at least one message middleware. By determining the sending priorities of the multiple message queues according to the current state of the message middleware corresponding to the message queues, the rationality of the determined order of sending message queues is improved, and the situation in which the current state of a certain message middleware is poor, resulting in a long time being consumed when sending a message queue using the message middleware, resulting in a low message sending rate for other message queues, is avoided. This improves the efficiency of the message sending system in sending message queues through the message middleware, thereby solving the technical problem of low efficiency in sending message queues in the related art. In an embodiment of the present disclosure, determining the sending priorities of multiple message queues based on the current state of at least one message middleware includes: filtering, by at least one queue selector connected in series, multiple message queues remaining after being filtered by a previous queue selector based on the current state, to obtain a queue selection result of the at least one queue selector; and determining the sending priorities of the multiple message queues based on the connection order of the at least one queue selector and the queue selection result.The queue selector may be a selector for determining the priorities of different message queues. The queue selector is configured with at least one screening condition or selection policy. The queue selector can be used to screen out message queues from multiple message queues for priority transmission. The corresponding message queues typically have a higher transmission priority than message queues not screened out. In an alternative solution to this embodiment, to improve the efficiency of determining the transmission priorities of different message queues, at least one queue selector may be preset in the message sending system to screen multiple message queues and determine the transmission priorities of the different message queues based on the screening results. Considering that the sending priority of different message queues can be determined based on the current status of the message middleware corresponding to the message queue, at least one filtering condition configured in the above-mentioned queue selector may refer to a condition related to the current status of the message middleware. For example, the filtering condition may include but is not limited to: filtering out message queues received by message middleware whose connection status is normal between the message middleware and the client and whose running status is normal; filtering out message queues received by message middleware whose connection status is normal between the message middleware and the client or whose running status is normal; filtering out message queues received by message middleware whose connection status is abnormal between the message middleware and the client and whose running status is abnormal, etc. As shown above, considering that the message queues may correspond to more than one current state of the message middleware, more than one corresponding filtering condition can be configured in the queue selector. Therefore, in actual use, multiple queue selectors can be configured in the message sending system. To stably determine the sending priorities of different message queues and avoid the situation where a message is simultaneously assigned to multiple sending priorities, the above-mentioned multiple queue selectors can be configured in series in the message sending system. The message sending system can use at least one queue selector connected in series to filter the multiple message queues remaining after the previous queue selector's filtering based on the current state of the message middleware corresponding to the message queues, to obtain the queue selection result corresponding to the current queue selector. Finally, the sending priority corresponding to each message queue is determined based on the connection order of at least one queue selector and the queue selection result.For example, if there are currently two queue selectors, where queue selector 1 is used to filter out message queues received by message middleware whose connection status is normal and whose client connection is normal, and queue selector 2 is used to filter out message queues whose running status is normal and whose message middleware is running normally, and queue selector 1 is placed before queue selector 2, then when using these two queue selectors to determine the sending priorities of different message queues, the message queue whose corresponding message middleware connection status is normal and whose client connection is normal can be first filtered out from multiple message queues, and the sending priority of this message queue can be set to a higher sending priority. Then, the message queue whose corresponding message middleware running status is normal and whose sending priority is set to a lower sending priority can be filtered out from the remaining message queues, and the sending priority of this message queue can be set to a lower sending priority. Finally, the sending priorities of the remaining message queues can be set to the lowest sending priority. In an embodiment of the present disclosure, at least one queue selector connected in series filters, based on the current state, multiple message queues remaining after filtering by the previous queue selector to obtain a queue selection result for the at least one queue selector. The process includes: determining a selector identifier for the queue selector; determining a target state that matches the selector identifier from the current state; obtaining a queue filtering condition that matches the selector identifier; and, if the target state successfully matches the queue filtering condition, storing the message queue received by the message middleware corresponding to the target state in the queue selection result. The target state may refer to a state determined in the current state and required for use during the process of filtering message queues by the queue selector. For example, if the queue selector filters out a message queue received by an available message middleware from multiple message queues, the corresponding target state is the running state in the current state. The filtering condition may refer to a condition required for use during the process of filtering message queues by the queue selector. For example, if the queue selector filters out a message queue received by an available message middleware from multiple message queues, the corresponding queue filtering condition may refer to the message middleware corresponding to the message queue being available.In an optional solution of this embodiment, to facilitate queue selector configuration in the messaging system and avoid configuring queue selectors with the same filtering conditions at different locations in the messaging system, different selector identifiers can be configured for different types of queue selectors, such as those with different filtering conditions. When using serially connected queue selectors to filter message queues, the messaging system can first determine the selector identifier of the queue selector with the highest order based on the connection order of the queue selectors. Then, it can determine the target state that matches the selector identifier from the current state and obtain the queue filtering conditions that match the selector identifier. Finally, the target state and the queue filtering conditions are matched. If the two match successfully, it indicates that the message queue received by the messaging middleware corresponding to the target state meets the filtering conditions of the queue selector. In this case, the message queue can be stored in the queue selection result. If the two match unsuccessfully, it indicates that the message queue received by the messaging middleware corresponding to the target state does not meet the filtering conditions of the queue selector. In this case, the message queue can be retained and applied to subsequent filtering of other queue selectors. It should be noted that since there is no direct connection between queue screening conditions and target states, both are determined based on selector identifiers. Therefore, the order of obtaining the queue screening conditions and obtaining the target state is not specifically limited. In an embodiment of the present disclosure, determining the sending priorities of multiple message queues based on the connection order of at least one queue selector and the queue selection result includes: determining the sending priorities of message queues included in the queue selection result based on the connection order of at least one queue selector; and determining the sending priority of a target message queue among the multiple message queues to be a preset priority, wherein the target message queue is used to indicate that it is one of the multiple message queues not included in the queue selection result, and the preset priority is lower than the sending priority of the message queues included in the queue selection result.In an optional solution of this embodiment, considering that in actual use, there may be a situation where a message queue does not meet the screening conditions of multiple queue selectors, that is, the target message queue mentioned above, in this case, the sending priority of the target message queue cannot be successfully determined based on the connection of the queue selectors. Therefore, to ensure that the sending priority is configured for the message queue, when determining the sending priorities of different message queues, the message sending system may first determine the sending priorities of the message queues included in the different queue selection results based on the connection order between the queue selectors and the queue selection results selected by the different queue selectors. Then, the sending priority of the target message queue is determined as the preset priority. Since the target message queue does not meet the screening conditions of the queue selector, the preset priority may be set to be lower than the sending priority of the message queue included in the queue selection result. In an embodiment of the present disclosure, at least one queue selector includes a first queue selector, a second queue selector, a third queue selector, and a fourth queue selector connected in series. The at least one queue selector connected in series filters, based on a current state, multiple message queues remaining after filtering by a previous queue selector to obtain a queue selection result of the at least one queue selector. The filtering process includes: filtering, by the first queue selector, multiple message queues based on a connection state and an operating state to obtain a queue selection result of the first queue selector; filtering, by the second queue selector, multiple message queues based on an operating state to obtain a queue selection result of the second queue selector; filtering, by the third queue selector, multiple message queues based on a connection state to obtain a queue selection result of the third queue selector; and adding, by the fourth queue selector, a target message queue from the multiple message queues to the queue selection result of the fourth queue selector, wherein the target message queue is used to represent a message queue from the multiple message queues that is not included in the queue selection result of the first queue selector, the queue selection result of the second queue selector, and the queue selection result of the third queue selector.To facilitate understanding of the process of selecting a message queue using a queue selector, let's take an example where the queue selector includes a first queue selector, a second queue selector, a third queue selector, and a fourth queue selector connected in series. Assume that the first queue selector's screening condition filters message queues based on both the connection status and the running status, the second queue selector's screening condition filters message queues based only on the running status, the third queue selector filters message queues based only on the connection status, and the fourth queue selector filters the aforementioned target message queue. When using the above queue selectors to filter message queues, the filtering condition included in the first queue selector can first be used to filter multiple message queues based on the connection status and running status of their corresponding message middleware. For example, message queues received by message middleware whose connection status indicates a normal connection between the message middleware and the client and whose running status indicates normal operation of the message middleware are filtered out to obtain the queue selection result of the first queue selector. Then, the filtering condition included in the second queue selector is used to filter the remaining message queues based on the connection status of the message middleware corresponding to the message middleware. For example, the message queues received by the message middleware whose connection status indicates that the message middleware and the client are normally connected are filtered out to obtain the queue selection result of the second queue selector; then, the filtering conditions contained in the third queue selector are used to filter the remaining message queues based on the running status of the message middleware corresponding to the multiple message queues. For example, the message queues received by the message middleware whose running status indicates that the message middleware is running normally are filtered out to obtain the queue selection result of the third queue selector; finally, the fourth queue selector is used to add the target message queues remaining after filtering by the first queue selector, the second queue selector, and the third queue selector to the queue selection result of the fourth queue selector. In an embodiment of the present disclosure, based on the connection order and queue selection result of at least one queue selector, determining the sending priorities of multiple message queues includes: determining that the sending priority of the message queue included in the queue selection result of the first queue selector is determined to be a first priority; determining that the sending priority of the message queue included in the queue selection result of the second queue selector is determined to be a second priority, wherein the first priority is greater than the second priority; determining that the sending priority of the message queue included in the queue selection result of the third queue selector is determined to be a third priority, wherein the second priority is greater than the third priority; and determining that the sending priority of the message queue included in the queue selection result of the fourth queue selector is determined to be a fourth priority, wherein the third priority is greater than the fourth priority.Continuing with the example of the four queue selectors connected in series, when determining the sending priorities of different message queues, the sending priority of the message queue included in the queue selection result of the first queue selector can be determined as the first priority, the sending priority of the message queue included in the queue selection result of the second queue selector can be determined as the second priority, the sending priority of the message queue included in the queue selection result of the third queue selector can be determined as the third priority, and the sending priority of the message queue included in the queue selection result of the fourth queue selector can be determined as the fourth priority. Based on the connection order of the four queue selectors, it can be determined that the first priority is greater than the second priority, the second priority is greater than the third priority, and the third priority is greater than the fourth priority. In an embodiment of the present disclosure, the method further includes: outputting at least one queue selector on an interactive interface of a client; in response to detecting an adjustment operation on the at least one queue selector in the interactive interface, adjusting the at least one queue selector based on the adjustment operation to obtain an adjusted queue selector; and filtering multiple message queues based on the current state using the adjusted queue selector to obtain a queue selection result for the adjusted queue selector. In an optional solution of this embodiment, the queue selector used to filter multiple message queues can also be set by the user. Specifically, the queue selector can be displayed in a preset interactive interface in the client, allowing the user to view the currently set queue selector and adjust the queue selector as needed, such as by adding, deleting, or moving the queue selector. The message sending system can adjust the queue selector based on the adjustment operations performed by the user on the interactive interface to obtain an adjusted queue selector, and then re-perform the aforementioned operations to filter the multiple message queues based on the current state of the message middleware to obtain a queue selection result for the adjusted queue selector. In an embodiment of the present disclosure, the method further includes: sending a probe message to the message middleware according to a preset period; obtaining a response time and response result of the message middleware in response to the probe message; and determining the current state of the message middleware based on the response time and response result. In an optional solution of this embodiment, the current state of the message middleware can be quickly obtained by the message sending system from the middleware state table that stores the current state. If the corresponding current state is not stored in the middleware state table, the message system can detect the current state of the message middleware in real time. Specifically, the message sending system can send a detection message to the message middleware according to a preset period, and obtain the message middleware's response time and response result to the detection message. Finally, the current state of the message middleware is determined based on the response time and response result.In an embodiment of the present disclosure, determining the current state of the message middleware based on the response time and response result includes: determining the connection state of the message middleware based on the response result; and determining the running state of the message middleware based on the response time. When determining the current state based on the response time and response result, the connection state of the message middleware can be determined based on the response result, and the running state of the message middleware can be determined based on the response time. In an embodiment of the present disclosure, determining the connection state of the message middleware based on the response result includes: determining the connection state as normal between the message middleware and the client if the response result indicates that the message middleware successfully responds to a probe message; and determining the connection state as abnormal between the message middleware and the client if the response result indicates that the message middleware fails to respond to the probe message. When determining the connection state based on the response result, the connection state can be determined as normal between the message middleware and the client if the response result indicates that the message middleware successfully responds to the probe message; and the connection state as abnormal between the message middleware and the client if the response result indicates that the message middleware fails to respond to the probe message. In an embodiment of the present disclosure, determining the operating status of the message middleware based on the response time includes: determining the operating status as normal operation of the message middleware if the response time is less than or equal to a preset time threshold; and determining the operating status as abnormal operation of the message middleware if the response time is greater than the preset time threshold. When determining the operating status based on the response time, the operating status may be determined as normal operation of the message middleware if the response time is less than or equal to the preset time threshold; and the operating status may be determined as abnormal operation of the message middleware if the response time is greater than the preset time threshold. To facilitate understanding of the current status of the message middleware obtained by the message sending system from the middleware status table, for example, assuming that there is currently message middleware A, when determining the current status of message middleware A according to the above process, if it is detected that message middleware A successfully responds to the detection message and the response time is less than the preset time threshold, then it can be determined that the message middleware is reachable and available. At this time, the middleware status table may store "Message middleware A: reachable, available". At this time, the message sending system can directly obtain the current status of message middleware A from the middleware status table: the client and the message middleware are connected normally, and the message middleware is running normally.Alternatively, if the status already stored in the middleware status table includes "message middleware A: reachable, available," and it is detected that message middleware A successfully responds to a probe message, but the time taken to respond to the probe message exceeds a preset time threshold, then the message middleware can be determined to be reachable but unavailable. The middleware status table can be updated to "message middleware A: reachable, unavailable." The current status of message middleware A obtained by the message sending system from the middleware status table is: the client and message middleware are connected normally, but the message middleware is operating abnormally. Alternatively, if the status already stored in the middleware status table includes "message middleware A: reachable, available," and it is detected that message middleware A has not received the probe message, since it is impossible to directly determine whether message middleware A is operating normally, the only determination is that the message middleware is unreachable. Accordingly, the middleware status can be updated to "message middleware A: unreachable, available." The current status of message middleware A obtained by the message sending system from the middleware status table is: the client and message middleware are connected abnormally, but the message middleware is operating normally. Alternatively, if the status already stored in the middleware status table includes "message middleware A: reachable, unavailable," and it is detected that message middleware A has not received the detection message, since it is impossible to directly determine whether message middleware A is operating normally, the only determination that the message middleware is unreachable is made. Accordingly, the middleware status can be updated to "message middleware A: unreachable, unavailable." The current status of message middleware A obtained by the message sending system from the middleware status table is: abnormal connection between the client and the message middleware, and abnormal operation of the message middleware. In an embodiment of the present disclosure, the method further includes: in response to the message middleware operating status being normal, based on the middleware identifier of the message middleware, storing the operating status and connection status in the middleware status table, wherein the middleware status table is deployed on the client; and in response to the message middleware operating status being abnormal, obtaining a first time point at which the message middleware operating abnormality was detected and a second time point at which the message middleware is operating normally, and storing the operating status, the first time point, the second time point, and the connection status in the middleware status table based on the middleware identifier.In an optional solution of this embodiment, after detecting the current status of the message middleware, the message sending system may store the detected current status in a preset middleware status table. Specifically, if the running status of the message middleware is normal, the middleware identifier, connection status, and running status of the message middleware may be correspondingly stored in the middleware status table based on the middleware identifier of the message middleware. If the running status of the message middleware is abnormal, the message sending system may further obtain a first time point when the abnormal running of the message middleware is detected, and then predict a second time point when the message middleware will next run normally based on the first time point. For example, the prediction may be based on historical data of the message middleware running from abnormal to normal, or based on a preset time period. Finally, based on the middleware identifier, the corresponding running status, connection status, first time point, and second time point are stored in the above-mentioned middleware status table for user viewing and to facilitate the message sending system to obtain the current status of the message middleware. In an embodiment of the present disclosure, the method further includes: in response to a failure in sending the message queue, updating the running status of the message middleware to a message middleware running abnormally, and acquiring other message middleware based on the middleware status table, wherein the current status of the other message middleware is that the connection between the other message middleware and the client is normal, and / or the other message middleware is running normally; in response to successfully acquiring the other message middleware, sending the message queue to the other message middleware; in response to a failure in acquiring the other message middleware, re-determining the current status of the message middleware according to a preset period, and if it is determined that the current status of the target message middleware is that the connection between the target message middleware and the client is normal, and / or the target message middleware is running normally, sending the message queue to the target message middleware. In an optional solution of this embodiment, if a message queue fails to be sent when using the message middleware, the message sending system can promptly update the operating status of the message queue that failed to be sent to an abnormal operation, and re-acquire other message middleware based on the above-mentioned middleware status table, such as other message middleware that is normally connected to the client and / or running normally, and send the message queue that failed to be sent to the other message middleware to resend the message queue.If no other message middleware can be used to send the message queue, the message sending system can detect the current status of the message middleware in real time according to the above-mentioned preset period, and if it is detected that the running status of any message middleware is that the message middleware is running normally, and / or the connection status is that the connection between the message middleware and the client is normal, the message middleware can be used as the target message middleware, and the message sending system can send the message queue that failed to be sent to the target message middleware, so that the message queue can be sent through the target message middleware, thereby avoiding the situation where the message queue is missed, thereby improving the sending stability and success rate of the message queue. For ease of understanding, FIG5 is a schematic diagram illustrating a message sending process according to an embodiment of the present disclosure. As shown in FIG5 , the entire sending process can include three parts. Part one represents the process of a message middleware receiving multiple message queues. Multiple message middleware can be configured in a message sending system, for example, broker 1 > broker 2, and so on. Different message middleware can receive different message queues. For example, broker 1 can receive message queues 1-1, 1-2, and 1-3, and broker 2 can receive message queues 2-1, 2-2, and 2-3, respectively. Part two represents the message queue selection process. A pipelined message queue filter composed of multiple queue selectors, such as selector 1, selector 2, and selector 3, can screen and filter the multiple message queues to obtain corresponding selection results, such as selection result 1, selection result 2, and selection result 3, to determine the sending priority of different message queues. Part three shows the message queue sending process. Message queues can be sent using the corresponding message middleware according to the determined sending priority. If a message queue fails to send, the message sending system can also update the message middleware of the message queue to another message middleware and resend the message queue, thereby avoiding missed messages or the situation where multiple sending failures of a message queue affect the overall message sending process.Figure 6 is a schematic diagram illustrating a client selecting a message middleware according to an embodiment of the present disclosure. When sending a message, the client can actively select the message middleware to use. The selection criteria can be the same as the aforementioned screening criteria. As shown in Figure 6 , the client can prioritize a functioning message middleware and send the message to that message middleware. For example, if broker1 and broker2 are unavailable, but broker3 and broker4 are available, broker3 and broker4 can be selected to forward the message. Figure 7 is another schematic diagram illustrating a client selecting a message middleware according to an embodiment of the present disclosure. As shown in Figure 7 , in addition to selecting the message queue corresponding to a functioning message middleware, a message middleware with a functioning connection to the client can also be selected. For example, based on Figure 6 , if broker1 is unreachable and unavailable, broker2 is unavailable but reachable, and broker3 and broker4 are reachable, broker2, broker3, and broker4 can be selected to forward the message. Table 1. Comparing the message sending results without queue selector processing with those after queue selector processing, Table 1 shows that when the message middleware broker is shut down at a preset time interval, the number of message queues with failed sending significantly decreases, and the sending success rate significantly increases when sending messages using the message sending method proposed in this disclosure. This largely ensures the stability and success rate of the message sending process. It should be noted that, for simplicity, the aforementioned method embodiments are presented as a series of actions. However, those skilled in the art should understand that this disclosure is not limited by the order of the actions described, as certain steps may be performed in a different order or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are preferred embodiments, and the actions and components involved are not necessarily required by this disclosure. Through the above description of the embodiments, those skilled in the art will clearly understand that the methods according to the aforementioned embodiments can be implemented using software and a necessary general-purpose hardware platform, or alternatively, hardware. Based on this understanding, the technical solution of the present disclosure, or the portion that contributes to the prior art, can essentially be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, a magnetic disk, or an optical disk) and includes instructions for enabling a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods of various embodiments of the present disclosure. Example 2: According to an embodiment of the present disclosure, a message sending method is also provided. It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system, such as a set of computer-executable instructions. Furthermore, although the flowcharts illustrate a logical order, in some cases, the steps shown or described may be executed in a different order than that shown. Figure 8 is a flowchart illustrating a message sending method according to an embodiment of the present disclosure. As shown in Figure 8, the method may include the following steps: Step S802: In response to an input instruction applied to an operation interface, display multiple message queues received by at least one message middleware on the operation interface. The input instruction may be an instruction to input and read a message queue to be sent. In an optional solution of this embodiment, upon receiving an input instruction on the scope operation interface, the message sending system may display multiple message queues received by at least one message middleware on the operation interface for user convenience. Step S804: In response to the sending instruction on the operation interface, the message queue sending results are displayed on the operation interface.The sending result represents the result of sending multiple message queues according to a sending priority by at least one message middleware. The sending priority is determined based on the current state of the at least one message middleware. The current state includes at least one of the following: a connection state and an operating state. The connection state indicates whether the message middleware and the client are connected properly, and the operating state indicates whether the message middleware is operating properly. The sending instruction may be an instruction to send a message queue via the message middleware. In an optional solution of this embodiment, upon receiving the sending instruction, the message sending system may first obtain the reading status of the message middleware, such as the connection state and the operating state. The connection state may indicate whether the connection between the message middleware and the client is normal, for example, whether the client can stably send message queues to the message queue, or may indicate the reachability of the message middleware. The operating state may indicate whether the message middleware is operating properly, for example, whether the message queue can be sent normally, or may indicate the availability of the message middleware. The sending priority of the message queue is then determined based on the current state, and the message middleware may then send the message queue according to the sending priority. It should be noted that the preferred implementation schemes involved in the above embodiments of the present disclosure are the same as the scheme, application scenarios, and implementation processes provided in Example 1, but are not limited to the scheme provided in Example 1. Example 3 According to an embodiment of the present disclosure, a message sending method is also provided. It should be noted that the steps shown in the flowcharts of the accompanying figures can be executed in a computer system, such as a set of computer-executable instructions. Moreover, although the flowcharts show a logical order, in some cases, the steps shown or described can be executed in a different order. Figure 9 is a flowchart of a message sending method according to an embodiment of the present disclosure. As shown in Figure 9, the method may include the following steps: Step S902: Acquire multiple message queues received by at least one message middleware by calling a first interface. The first interface includes a first parameter, and the parameter value of the first parameter includes a message queue. The first interface may be an interface for acquiring message queues. In an optional solution of this embodiment, when sending a message queue, the message sending system may first acquire the first parameter by calling the first interface, that is, acquire the multiple message queues received by at least one message middleware. Step S904: Determine the current status of at least one message middleware.The current status includes at least one of the following: a connection status and an operating status. The connection status indicates whether the message middleware and the client are connected properly, and the operating status indicates whether the message middleware is operating properly. The current status may reflect the availability and reachability of the message middleware. The current status of the message middleware may include the connection status and / or the operating status. The connection status may indicate whether the connection between the message middleware and the client is normal, for example, whether the client can stably send message queues to the message queue, and may indicate the reachability of the message middleware. The operating status may indicate whether the message middleware is operating properly, for example, whether it can normally send message queues, and may indicate the availability of the message middleware. After obtaining multiple message queues, the message sending system may determine the current status of the message middleware currently used to forward the message queue, namely, whether communication between the message middleware and the client is smooth and whether the message middleware can stably send message queues. Step S906: Determine the sending priority of the multiple message queues based on the current status of at least one message middleware. In an optional solution of this embodiment, considering that message queues are forwarded by message middleware, and that different message middleware may have different current states, which can reflect whether different message middleware can stably and efficiently send received message queues, if the message queues are sent using the message middleware corresponding to the message queues in a random order or the order in which the message queues were received, the message queues sent using the message middleware may be less stable and less efficient. For example, if message queue A is currently prioritized for sending, and the message middleware A corresponding to message queue A has unstable sending capabilities, such as low message middleware reachability, the message sending system may use message middleware A to repeatedly send message queue A, causing other message queues, such as message queue B and message queue C, to be unable to enter the message sending state. This, in turn, affects the entire message queue sending process, resulting in the message sending system using the message middleware to send message queues with lower stability and efficiency. Therefore, in order to improve the stability and efficiency of sending message queues using message middleware, the message sending system can first determine the sending order of different message queues, that is, determine the sending priority of multiple message queues. For example, message queues received by message middleware with higher stability are sent first, and then message queues received by message middleware with lower stability are sent.Considering that the current status of the message middleware obtained above can effectively reflect whether the message middleware can stably and smoothly send the received message queues, the message sending system can determine the sending priorities of the multiple received message queues based on the current status of at least one message middleware. In step S908, the at least one message middleware is used to send the multiple message queues to the target client according to the sending priorities. In an optional solution of this embodiment, after determining the sending priorities of different message queues, the message sending system can use the corresponding message middleware to send the multiple message queues according to the sending priorities. For example, the message middleware corresponding to the message queue with a higher sending priority may be used to send the message queue, and then the message middleware corresponding to the message queue with a lower sending priority may be used to send the message queue, thereby ensuring smooth and stable delivery of the message queues. In step S910, the message queue sending results are output by calling a second interface. The second interface includes a second parameter, the parameter value of which includes the sending results. The second interface may be an interface for outputting the sending results. In an alternative solution of this embodiment, when using the message middleware to send a message queue, the message sending system can also obtain the message queue sending results in real time by calling the aforementioned second interface, making it convenient for users to view the message queue sending status. Embodiment 4 According to an embodiment of the present disclosure, a message sending device for implementing the aforementioned message sending method is also provided. FIG10 is a block diagram of a message sending device according to an embodiment of the present disclosure. As shown in FIG10 , the device includes: a first message queue obtaining component 1002, a first current state determining component 1004, a first sending priority determining component 1006, and a first message queue sending component 1008. Among them, the first message queue acquisition component 1002 is configured to obtain multiple message queues received by at least one message middleware; the first current state determination component 1004 is configured to determine the current state of at least one message middleware, wherein the current state includes at least one of the following: connection state and running state, the connection state is used to characterize whether the message middleware and the client are connected normally, and the running state is used to characterize whether the message middleware is running normally; the first sending priority determination component 1006 is configured to determine the sending priority of multiple message queues based on the current state of at least one message middleware; the first message queue sending component 1008 is configured to use at least one message middleware to send multiple message queues to the target client according to the sending priority.In an embodiment of the present disclosure, the first sending priority determination component 1006 includes: a message queue screening component configured to screen, based on the current state, multiple message queues remaining after the previous queue selector screening by at least one queue selector connected in series, to obtain a queue selection result of the at least one queue selector; and a sending priority determination component configured to determine the sending priorities of the multiple message queues based on the connection order of the at least one queue selector and the queue selection result. In an embodiment of the present disclosure, the message queue screening component is further configured to: determine a selector identifier of the queue selector, determine a target state matching the selector identifier from the current state; obtain a queue screening condition matching the selector identifier; and, if the target state successfully matches the queue screening condition, store the message queue received by the message middleware corresponding to the target state in the queue selection result. In an embodiment of the present disclosure, the sending priority determination component is further configured to: determine the sending priority of the message queue included in the queue selection result based on the connection order of at least one queue selector; and determine the sending priority of a target message queue among the multiple message queues as a preset priority, wherein the target message queue is used to represent that the target message queue is not included in the queue selection result among the multiple message queues, and the preset priority is lower than the sending priority of the message queue included in the queue selection result. In an embodiment of the present disclosure, at least one queue selector includes a first queue selector, a second queue selector, a third queue selector, and a fourth queue selector connected in series, wherein the message queue screening component is further configured to: screen multiple message queues based on connection status and running status through the first queue selector to obtain a queue selection result of the first queue selector; screen multiple message queues based on running status through the second queue selector to obtain a queue selection result of the second queue selector; screen multiple message queues based on connection status through the third queue selector to obtain a queue selection result of the third queue selector; and add a target message queue from the multiple message queues to the queue selection result of the fourth queue selector through the fourth queue selector, wherein the target message queue is used to represent a message queue from the multiple message queues that is not included in the queue selection result of the first queue selector, the queue selection result of the second queue selector, and the queue selection result of the third queue selector.In an embodiment of the present disclosure, the sending priority determination component is further configured to: determine the sending priority of the message queue included in the queue selection result of the first queue selector to be a first priority; determine the sending priority of the message queue included in the queue selection result of the second queue selector to be a second priority, wherein the first priority is greater than the second priority; determine the sending priority of the message queue included in the queue selection result of the third queue selector to be a third priority, wherein the second priority is greater than the third priority; and determine the sending priority of the message queue included in the queue selection result of the fourth queue selector to be a fourth priority, wherein the third priority is greater than the fourth priority. In an embodiment of the present disclosure, the apparatus further includes: a selector output component configured to output at least one queue selector on an interactive interface of a client; a selector adjustment component configured to, in response to detecting an adjustment operation on at least one queue selector in the interactive interface, adjust the at least one queue selector based on the adjustment operation to obtain an adjusted queue selector; and a message queue screening component configured to filter multiple message queues based on the current state using the adjusted queue selector to obtain a queue selection result of the adjusted queue selector. In an embodiment of the present disclosure, the apparatus further includes: a message sending component configured to send a probe message to the message middleware at a preset interval; a result acquisition component configured to acquire the response time and response result of the message middleware in response to the probe message; and a status determination component configured to determine the current status of the message middleware based on the response time and response result. In this embodiment of the present disclosure, the status determination component includes: a connection status determination component configured to determine the connection status of the message middleware based on the response result; and an operation status determination component configured to determine the operation status of the message middleware based on the response time. In this embodiment of the present disclosure, the connection status determination component is further configured to: determine the connection status as normal between the message middleware and the client if the response result indicates that the message middleware successfully responded to the probe message; and determine the connection status as abnormal between the message middleware and the client if the response result indicates that the message middleware did not successfully respond to the probe message. In an embodiment of the present disclosure, the running status determination component is further configured to: determine that the running status is normal operation of the message middleware when the response time is less than or equal to the preset time threshold; and determine that the running status is abnormal operation of the message middleware when the response time is greater than the preset time threshold.In an embodiment of the present disclosure, the apparatus further includes: a first storage component configured to, in response to the running status indicating that the message middleware is running normally, store the running status and the connection status in a middleware status table based on a middleware identifier of the message middleware, wherein the middleware status table is deployed in the client; and a second storage component configured to, in response to the running status indicating that the message middleware is running abnormally, obtain a first time node at which the message middleware is running abnormally and a second time node at which the message middleware is running normally next time, and store the running status, the first time node, the second time node, and the connection status in the middleware status table based on the middleware identifier. In an embodiment of the present disclosure, the apparatus further includes: a middleware acquisition component configured to, in response to a message queue sending failure, update the running status of the message middleware to "message middleware operation abnormality" and, based on a middleware status table, acquire other message middleware, wherein the current status of the other message middleware is "normal connection between the other message middleware and the client is normal" and / or "normal operation of the other message middleware is normal"; a first sending component configured to, in response to successful acquisition of the other message middleware, send the message queue to the other message middleware; and a second sending component configured to, in response to a failure to acquire the other message middleware, re-determine the current status of the message middleware at a preset period and, if it is determined that the current status of a target message middleware is "normal connection between the target message middleware and the client is normal" and / or "normal operation of the target message middleware is normal", send the message queue to the target message middleware. It should be noted that the first message queue acquisition component 1002, the first current status determination component 1004, the first sending priority determination component 1006, and the first message queue sending component 1008 are described above. Corresponding to steps S402 to S408 in Example 1, the four components and corresponding steps implement the same examples and application scenarios, but are not limited to the content disclosed in the above-mentioned Example 1. It should be noted that the above-mentioned components or assemblies can be hardware components or software components stored in a memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, 102n). The above-mentioned components can also be part of a device and can be run in the computer terminal 10 provided in Example 1. It should be noted that the preferred implementation schemes involved in the above-mentioned embodiments of the present disclosure are the same as the schemes, application scenarios, and implementation processes provided in Example 1, but are not limited to the schemes provided in Example 1. Example 5 According to an embodiment of the present disclosure, a message sending device configured to implement the above-mentioned message sending method is also provided.FIG11 is a block diagram of a message sending device according to an embodiment of the present disclosure. As shown in FIG11 , the device includes a first display component 1102 and a second display component 1104. The first display component 1102 is configured to display, on the operation interface, multiple message queues received by at least one message middleware in response to input instructions applied to the operation interface. The second display component 1104 is configured to display, on the operation interface, message queue sending results in response to sending instructions applied to the operation interface. The sending results indicate the results of sending the multiple message queues according to a sending priority by the at least one message middleware. The sending priority is determined based on the current state of the at least one message middleware. The current state includes at least one of the following: a connection state and an operating state. The connection state indicates whether the message middleware and the client are properly connected, and the operating state indicates whether the message middleware is operating properly. It should be noted that the first display component 1102 and the second display component 1104 described above correspond to steps S802 to S804 in Example 2. The examples and application scenarios implemented by these two components and the corresponding steps are the same, but are not limited to the content disclosed in Example 1. It should be noted that the above-mentioned components or assemblies may be hardware components or software components stored in a memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, 102n). These components may also be part of a device that can run in the computer terminal 10 provided in Example 1. It should be noted that the preferred implementation schemes involved in the above-mentioned embodiments of the present disclosure are the same as the schemes, application scenarios, and implementation processes provided in Example 1, but are not limited to the schemes provided in Example 1. Example 6, according to an embodiment of the present disclosure, also provides a message sending device for implementing the above-mentioned message sending method. FIG12 is a structural block diagram of a message sending device according to an embodiment of the present disclosure. As shown in FIG12 , the device includes: a second message queue acquiring component 1202, a second current state determining component 1204, a second sending priority determining component 1206, a second message queue sending component 1208, and a sending result output component 1210.Among them, the second message queue acquisition component 1202 is configured to obtain multiple message queues received by at least one message middleware by calling the first interface, wherein the first interface includes a first parameter, and the parameter value of the first parameter includes the message queue; the second current state determination component 1204 is configured to determine the current state of at least one message middleware, wherein the current state includes at least one of the following: connection state and running state, the connection state is used to characterize whether the message middleware and the client are connected normally, and the running state is used to characterize whether the message middleware is running normally; the second sending priority determination component 1206 is configured to determine the sending priority of multiple message queues based on the current state of at least one message middleware; the second message queue sending component 1208 is configured to use at least one message middleware to send multiple message queues to the target client according to the sending priority; the sending result output component 1210 is configured to output the sending result of the message queue by calling the second interface, wherein the second interface includes a second parameter, and the parameter value of the second parameter includes the sending result. It should be noted that the aforementioned second message queue acquisition component 1202, second current state determination component 1204, second sending priority determination component 1206, second message queue sending component 1208, and sending result output component 1210 correspond to steps S902 to S910 in Example 3. These five components implement the same examples and application scenarios as the corresponding steps, but are not limited to the content disclosed in Example 1. It should be noted that the aforementioned components or assemblies may be hardware components or software components stored in a memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, 102n). These components may also be part of an apparatus and run in the computer terminal 10 provided in Example 1. It should be noted that the preferred implementation schemes involved in the aforementioned embodiments of the present disclosure are the same as the schemes, application scenarios, and implementation processes provided in Example 1, but are not limited to the schemes provided in Example 1. Example 7: The embodiments of the present disclosure may provide an electronic device, which may be any electronic device in a group of electronic devices. Optionally, in this embodiment, the electronic device may be replaced by a terminal device such as a mobile terminal. Optionally, in this embodiment, the electronic device may be located in at least one of a plurality of network devices in a computer network.In this embodiment, the electronic device may execute program code for the following steps in the message sending method: obtaining multiple message queues received by at least one message middleware; determining the current state of the at least one message middleware, where the current state includes at least one of the following: a connection state and an operating state, where the connection state indicates whether the message middleware and the client are properly connected, and an operating state indicates whether the message middleware is operating properly; determining the sending priorities of the multiple message queues based on the current state of the at least one message middleware; and using the at least one message middleware to send the multiple message queues to the target client according to the sending priorities. Optionally, Figure 13 is a block diagram of an electronic device according to an embodiment of the present disclosure. As shown, the electronic device A may include one or more (only one shown) processors 1302, a memory 1304, a storage controller, and a peripheral interface, where the peripheral interface is connected to a radio frequency component, an audio component, and a display. The memory can be used to store software programs and components, such as program instructions / components corresponding to the message sending method and apparatus in the embodiments of the present disclosure. The processor executes the software programs and components stored in the memory to perform various functional applications and data processing, thereby implementing the aforementioned message sending method. The memory may include high-speed random access memory (RAM) and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include memory remotely located relative to the processor, which can be connected to terminal A via a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof. The processor can access information and applications stored in the memory via a transmission device to perform the following steps: determining the sending priorities of multiple message queues based on the current state of at least one message middleware, including: screening, using at least one queue selector connected in series, the multiple message queues remaining after screening by the previous queue selector based on the current state, to obtain a queue selection result of the at least one queue selector; and determining the sending priorities of the multiple message queues based on the connection order of the at least one queue selector and the queue selection result.Optionally, the processor may further execute program code for the following steps: Filtering, based on the current state, multiple message queues remaining after filtering by a previous queue selector using at least one queue selector connected in series to obtain a queue selection result for the at least one queue selector, including: determining a selector identifier for the queue selector, determining a target state that matches the selector identifier from the current state; obtaining a queue filtering condition that matches the selector identifier; and, if the target state successfully matches the queue filtering condition, storing the message queue received by the message middleware corresponding to the target state in the queue selection result. Optionally, the processor may further execute program code for the following steps: Determining the sending priorities of multiple message queues based on the connection order of the at least one queue selector and the queue selection result, including: Determining the sending priorities of message queues included in the queue selection result based on the connection order of the at least one queue selector; and Determining the sending priority of a target message queue among the multiple message queues to be a preset priority, wherein the target message queue is used to indicate that the multiple message queues are not included in the queue selection result, and the preset priority is lower than the sending priority of the message queues included in the queue selection result. Optionally, the processor may further execute program code of the following steps: the at least one queue selector includes a first queue selector, a second queue selector, a third queue selector, and a fourth queue selector connected in series, wherein the at least one queue selector connected in series filters, based on a current state, multiple message queues remaining after filtering by a previous queue selector to obtain a queue selection result of the at least one queue selector, including: filtering, by the first queue selector, multiple message queues based on a connection state and an operating state to obtain a queue selection result of the first queue selector; filtering, by the second queue selector, multiple message queues based on an operating state to obtain a queue selection result of the second queue selector; filtering, by the third queue selector, multiple message queues based on a connection state to obtain a queue selection result of the third queue selector; and adding, by the fourth queue selector, a target message queue from the multiple message queues to the queue selection result of the fourth queue selector, wherein the target message queue is used to represent a message queue from the multiple message queues that is not included in the queue selection result of the first queue selector, the queue selection result of the second queue selector, and the queue selection result of the third queue selector.Optionally, the processor may further execute program code for the following steps: determining the sending priorities of multiple message queues based on the connection order and queue selection results of at least one queue selector, including: determining the sending priority of the message queue included in the queue selection result of the first queue selector as a first priority; determining the sending priority of the message queue included in the queue selection result of the second queue selector as a second priority, wherein the first priority is greater than the second priority; determining the sending priority of the message queue included in the queue selection result of the third queue selector as a third priority, wherein the second priority is greater than the third priority; and determining the sending priority of the message queue included in the queue selection result of the fourth queue selector as a fourth priority, wherein the third priority is greater than the fourth priority. Optionally, the processor may further execute program code for the following steps: the method further includes: outputting at least one queue selector on an interactive interface of the client; in response to detecting an adjustment operation on the at least one queue selector in the interactive interface, adjusting the at least one queue selector based on the adjustment operation to obtain an adjusted queue selector; and filtering the multiple message queues based on the current state using the adjusted queue selector to obtain a queue selection result of the adjusted queue selector. Optionally, the processor may further execute program code for the following steps: The method further includes: sending a probe message to the message middleware according to a preset period; obtaining the response time and response result of the message middleware in response to the probe message; and determining the current state of the message middleware based on the response time and response result. Optionally, the processor may further execute program code for the following steps: determining the current state of the message middleware based on the response time and response result, including: determining the connection state of the message middleware based on the response result; and determining the running state of the message middleware based on the response time. Optionally, the processor may further execute program code for the following steps: determining the connection state of the message middleware based on the response result, including: if the response result indicates that the message middleware successfully responded to the probe message, determining the connection state as normal between the message middleware and the client; if the response result indicates that the message middleware did not successfully respond to the probe message, determining the connection state as abnormal between the message middleware and the client. Optionally, the processor may further execute program code of the following steps: determining the running status of the message middleware based on the response time, including: determining that the running status is normal operation of the message middleware when the response time is less than or equal to a preset time threshold; and determining that the running status is abnormal operation of the message middleware when the response time is greater than the preset time threshold.Optionally, the processor may further execute the program code of the following steps: the method further includes: in response to the running status being that the message middleware is running normally, based on the middleware identifier of the message middleware, storing the running status and the connection status in the middleware status table, wherein the middleware status table is deployed in the client; in response to the running status being that the message middleware is running abnormally, obtaining the first time node at which the message middleware is running abnormally and the second time node at which the message middleware is running normally next time, and based on the middleware identifier, storing the running status, the first time node, the second time node and the connection status in the middleware status table. Optionally, the processor may further execute the program code of the following steps: the method further includes: in response to a failure in sending the message queue, updating the running status of the message middleware to a message middleware running abnormality, and acquiring other message middleware based on the middleware status table, wherein the current status of the other message middleware is that the connection between the other message middleware and the client is normal, and / or the other message middleware is running normally; in response to successfully acquiring the other message middleware, sending the message queue to the other message middleware; in response to a failure in acquiring the other message middleware, re-determining the current status of the message middleware according to a preset period, and when it is determined that the current status of the target message middleware is that the connection between the target message middleware and the client is normal, and / or the target message middleware is running normally, sending the message queue to the target message middleware. In an embodiment of the present disclosure, a method is employed to obtain multiple message queues received by at least one message middleware; determine the current state of at least one message middleware; determine the sending priorities of the multiple message queues based on the current state of the at least one message middleware; and use the at least one message middleware to send the multiple message queues to a target client according to the sending priorities. By determining the sending priorities of the multiple message queues based on the current state of the message middleware corresponding to the message queues, the rationality of the determined order of sending message queues is improved. This avoids situations where a message middleware with a poor current state causes a long time to be spent sending a message queue using that message middleware, resulting in a low message sending rate for other message queues. This improves the efficiency of the message sending system in sending message queues via the message middleware, thereby resolving the technical problem of low message queue sending efficiency in related technologies. Those skilled in the art will appreciate that the structure shown in the figure is merely illustrative, and the electronic device may also be a smartphone (such as an Android phone, an iOS phone, etc.), a tablet computer, a PDA, or a terminal device such as a mobile internet device (MID) or a PAD. FIG. 13 does not limit the structure of the electronic device described above.For example, electronic device A may include more or fewer components (such as a network interface, a display device, etc.) than those shown in FIG13 , or may have a configuration different from that shown in FIG13 . A person skilled in the art will appreciate that all or part of the steps in the various methods of the above embodiments can be completed by instructing the hardware associated with the terminal device through a program. The program can be stored in a computer-readable storage medium, which may include a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk. Example 8 The embodiments of the present disclosure also provide a storage medium. Optionally, in this embodiment, the storage medium may be used to store the program code executed by the message sending method provided in Example 1 above. Optionally, in this embodiment, the storage medium may be located in any computer terminal in a computer terminal group in a computer network, or in any mobile terminal in a mobile terminal group. Optionally, in this embodiment, the storage medium is configured to store program code for performing the following steps: obtaining multiple message queues received by at least one message middleware; determining the current state of the at least one message middleware, wherein the current state includes at least one of the following: a connection state and an operating state, wherein the connection state indicates whether the message middleware and the client are properly connected, and the operating state indicates whether the message middleware is operating properly; determining the sending priorities of the multiple message queues based on the current state of the at least one message middleware; and sending the multiple message queues to the target client according to the sending priorities using the at least one message middleware. Optionally, the storage medium is configured to store program code for performing the following steps: determining the sending priorities of the multiple message queues based on the current state of the at least one message middleware, including: filtering, using at least one queue selector connected in series, the multiple message queues remaining after filtering by the previous queue selector based on the current state, to obtain a queue selection result of the at least one queue selector; and determining the sending priorities of the multiple message queues based on the connection order of the at least one queue selector and the queue selection result.Optionally, the storage medium is configured to store program code for performing the following steps: filtering, based on the current state, multiple message queues remaining after filtering by a previous queue selector using at least one queue selector connected in series to obtain a queue selection result for the at least one queue selector, including: determining a selector identifier for the queue selector, determining a target state that matches the selector identifier from the current state; obtaining a queue filtering condition that matches the selector identifier; and, if the target state successfully matches the queue filtering condition, storing the message queue received by the message middleware corresponding to the target state in the queue selection result. Optionally, the storage medium is configured to store program code for performing the following steps: determining the sending priorities of multiple message queues based on the connection order of the at least one queue selector and the queue selection result, including: determining the sending priorities of message queues included in the queue selection result based on the connection order of the at least one queue selector; and determining the sending priority of a target message queue among the multiple message queues to be a preset priority, wherein the target message queue is used to indicate that the multiple message queues are not included in the queue selection result, and the preset priority is lower than the sending priority of the message queues included in the queue selection result. Optionally, the storage medium is configured to store program code for performing the following steps: the at least one queue selector includes a first queue selector, a second queue selector, a third queue selector, and a fourth queue selector connected in series, wherein the at least one queue selector connected in series filters, based on a current state, multiple message queues remaining after filtering by a previous queue selector to obtain a queue selection result of the at least one queue selector, including: filtering, by the first queue selector, multiple message queues based on a connection state and an operating state to obtain a queue selection result of the first queue selector; filtering, by the second queue selector, multiple message queues based on an operating state to obtain a queue selection result of the second queue selector; filtering, by the third queue selector, multiple message queues based on a connection state to obtain a queue selection result of the third queue selector; and adding, by the fourth queue selector, a target message queue from the multiple message queues to the queue selection result of the fourth queue selector, wherein the target message queue is used to represent a message queue from the multiple message queues that is not included in the queue selection result of the first queue selector, the queue selection result of the second queue selector, and the queue selection result of the third queue selector.Optionally, the storage medium is configured to store program code for executing the following steps: determining the sending priorities of multiple message queues based on the connection order and queue selection results of at least one queue selector, including: determining the sending priority of the message queue included in the queue selection result of the first queue selector to be a first priority; determining the sending priority of the message queue included in the queue selection result of the second queue selector to be a second priority, wherein the first priority is greater than the second priority; determining the sending priority of the message queue included in the queue selection result of the third queue selector to be a third priority, wherein the second priority is greater than the third priority; and determining the sending priority of the message queue included in the queue selection result of the fourth queue selector to be a fourth priority, wherein the third priority is greater than the fourth priority. Optionally, the storage medium is configured to store program code for executing the following steps: the method further includes: outputting at least one queue selector on an interactive interface of the client; in response to detecting an adjustment operation on the at least one queue selector in the interactive interface, adjusting the at least one queue selector based on the adjustment operation to obtain an adjusted queue selector; and filtering the multiple message queues based on the current state using the adjusted queue selector to obtain a queue selection result of the adjusted queue selector. Optionally, the storage medium is configured to store program code for executing the following steps: the method further includes: sending a probe message to the message middleware according to a preset period; obtaining the response time and response result of the message middleware in response to the probe message; and determining the current state of the message middleware based on the response time and response result. Optionally, the storage medium is configured to store program code for executing the following steps: determining the current state of the message middleware based on the response time and response result, including: determining the connection state of the message middleware based on the response result; and determining the running state of the message middleware based on the response time. Optionally, the storage medium is configured to store program code for executing the following steps: determining the connection state of the message middleware based on the response result, including: if the response result indicates that the message middleware successfully responds to the probe message, determining the connection state as normal between the message middleware and the client; if the response result indicates that the message middleware does not successfully respond to the probe message, determining the connection state as abnormal between the message middleware and the client. Optionally, the storage medium is configured to store program code for executing the following steps: determining the running status of the message middleware based on the response time, including: when the response time is less than or equal to a preset time threshold, determining that the running status is that the message middleware is running normally; when the response time is greater than the preset time threshold, determining that the running status is that the message middleware is running abnormally.Optionally, the storage medium is configured to store program code for executing the following steps: the above method also includes: in response to the running status being that the message middleware is running normally, based on the middleware identifier of the message middleware, storing the running status and the connection status in the middleware status table, wherein the middleware status table is deployed in the client; in response to the running status being that the message middleware is running abnormally, obtaining the first time node when the message middleware is running abnormally and the second time node when the message middleware is running normally next time, and based on the middleware identifier, storing the running status, the first time node, the second time node and the connection status in the middleware status table. Optionally, the storage medium is configured to store program code for executing the following steps: the above method also includes: in response to a failure in sending the message queue, updating the running status of the message middleware to a message middleware running abnormality, and obtaining other message middleware based on the middleware status table, wherein the current status of the other message middleware is that the connection between the other message middleware and the client is normal, and / or the other message middleware is running normally; in response to successfully obtaining the other message middleware, sending the message queue to the other message middleware; in response to a failure to obtain the other message middleware, re-determining the current status of the message middleware according to a preset period, and when it is determined that the current status of the target message middleware is that the connection between the target message middleware and the client is normal, and / or the target message middleware is running normally, sending the message queue to the target message middleware. In an embodiment of the present disclosure, a method is employed to obtain multiple message queues received by at least one message middleware; determine the current state of at least one message middleware; determine the sending priorities of the multiple message queues based on the current state of the at least one message middleware; and use the at least one message middleware to send the multiple message queues to a target client according to the sending priorities. By determining the sending priorities of the multiple message queues based on the current state of the message middleware corresponding to the message queues, the rationality of the determined order of sending message queues is improved. This avoids situations where a poor current state of a message middleware causes a long time to be spent sending a message queue using that message middleware, resulting in a low message sending rate for other message queues. This improves the efficiency of the message sending system in sending message queues via the message middleware, thereby resolving the technical problem of low message queue sending efficiency in related technologies. The serial numbers of the embodiments of the present disclosure are for descriptive purposes only and do not represent the merits or demerits of the embodiments. It should be understood that the disclosed technical content can be implemented in other ways in the several embodiments provided in this disclosure.The device embodiments described above are merely illustrative. For example, the division of components represents only one logical functional division. In actual implementation, different divisions may be employed. For example, multiple components or components may be combined or integrated into another system, or some features may be omitted or not implemented. Furthermore, the coupling, direct coupling, or communication connection shown or discussed may be through interfaces, or the indirect coupling or communication connection between components or components may be electrical or otherwise. Components described as separate parts may or may not be physically separate, and components shown as components may or may not be physical components, i.e., they may be located in one location or distributed across multiple network components. Some or all of these components may be selected to achieve the objectives of the present embodiments as needed. Furthermore, the functional components in the various embodiments of the present disclosure may be integrated into a single processing component, each component may exist physically separately, or two or more components may be integrated into a single component. These integrated components may be implemented in either hardware or software functional components. If the integrated components are implemented as software functional components and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this disclosure, or the portion that contributes to the prior art, or all or part of this technical solution, can be embodied in the form of a software product. This computer software product, stored in a storage medium, includes instructions for enabling a computer device (such as a personal computer, server, or network device) to perform all or part of the steps of the various embodiments of the present disclosure. The aforementioned storage media include various media capable of storing program code, such as USB flash drives, read-only memories (ROMs), random access memories (RAMs), removable hard drives, magnetic disks, or optical disks. The above are merely preferred embodiments of the present disclosure. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of this disclosure, and such improvements and modifications should also be considered within the scope of protection of this disclosure.Industrial Applicability The solution provided by the embodiments of the present disclosure can be applied to the process of sending message queues. By determining the sending priority of multiple message queues based on the current status of the message middleware corresponding to the message queues, the rationality of the determined order of sending message queues is improved, and the situation where the current status of a certain message middleware is poor, resulting in a long time consumption when using the message middleware to send messages, resulting in a low message sending rate for other message queues, is avoided. This improves the efficiency of the message sending system in sending message queues through the message middleware, and further solves the technical problem of low efficiency in sending message queues in related technologies.
Claims
Claims 1. A message sending method, the method comprising: Obtain multiple message queues received by at least one message middleware; Determine the current state of the at least one message middleware, where the current state includes at least one of the following: connection state and running state. The connection state is used to represent whether the message middleware and the client are normally connected, and the running state is used to represent whether the message middleware is running normally; Based on the current state of the at least one message middleware, determine the sending priorities of the multiple message queues; use the at least one message middleware to send the multiple message queues to the target client according to the sending priorities.
2. The method according to claim 1, wherein Based on the current state of the at least one message middleware, determining the sending priorities of the multiple message queues includes: screening the multiple message queues remaining after being screened by the previous queue selector based on the current state by at least one queue selector connected in series to obtain the queue selection result of the at least one queue selector; determining the sending priorities of the multiple message queues based on the connection order and the queue selection result of the at least one queue selector.
3. The method according to claim 2, wherein Screening the multiple message queues remaining after being screened by the previous queue selector based on the current state by at least one queue selector connected in series to obtain the queue selection result of the at least one queue selector includes: determining the selector identifier of the queue selector, determining the target state matching the selector identifier from the current state; obtaining the queue screening condition matching the selector identifier; when the target state meets the queue screening condition, storing the message queue received by the message middleware corresponding to the target state into the queue selection result.
4. The method according to claim 2, wherein Based on the connection order and the queue selection result of the at least one queue selector, determining the sending priorities of the multiple message queues includes: determining the sending priorities of the message queues included in the queue selection result based on the connection order of the at least one queue selector; determining that the sending priority of the target message queue in the multiple message queues is a preset priority, where the target message queue is used to represent the message queues in the multiple message queues that are not included in the queue selection result, and the preset priority is lower than the sending priorities of the message queues included in the queue selection result.
5. The method according to claim 2, wherein The at least one queue selector includes a first queue selector, a second queue selector, a third queue selector, and a fourth queue selector connected in series. Among them, the at least one queue selector connected in series filters the remaining multiple message queues after being filtered by the previous queue selector based on the current state to obtain the queue selection result of the at least one queue selector, including: filtering the multiple message queues by the first queue selector based on the connection state and the running state to obtain the queue selection result of the first queue selector; filtering the multiple message queues by the second queue selector based on the running state to obtain the queue selection result of the second queue selector; filtering the multiple message queues by the third queue selector based on the connection state to obtain the queue selection result of the third queue selector; adding the target message queue in the multiple message queues to the queue selection result of the fourth queue selector by the fourth queue selector, where the target message queue is used to represent the message queues in the multiple message queues that are not included in the queue selection result of the first queue selector, the queue selection result of the second queue selector, and the queue selection result of the third queue selector.
6. The method according to claim 5, wherein Based on the connection order and queue selection result of the at least one queue selector, determine the sending priorities of the multiple message queues, including: determining that the sending priority of the message queues included in the queue selection result of the first queue selector is determined as the first priority; determining that the sending priority of the message queues included in the queue selection result of the second queue selector is determined as the second priority, where the first priority is greater than the second priority; determining that the sending priority of the message queues included in the queue selection result of the third queue selector is determined as the third priority, where the second priority is greater than the third priority; determining that the sending priority of the message queues included in the queue selection result of the fourth queue selector is the fourth priority, where the third priority is greater than the fourth priority.
7. The method according to claim 2, wherein The method further includes: outputting the at least one queue selector on an interaction interface in the client; in response to detecting an adjustment operation for adjusting the at least one queue selector on the interaction interface, adjusting the at least one queue selector based on the adjustment operation to obtain an adjusted queue selector; filtering the multiple message queues by the adjusted queue selector based on the current state to obtain the queue selection result of the adjusted queue selector.
8. The method according to claim 1, wherein The method further includes: sending a probe message to the message middleware according to a preset period. Obtain the response time and response result of the message middleware in response to the probe message; based on the response time and the response result, determine the current state of the message middleware.
9. The method according to claim 8, wherein Based on the response time and the response result, determining the current state of the message middleware includes: based on the response result, determining the connection state of the message middleware; based on the response time, determining the running state of the message middleware.
10. The method according to claim 9, wherein, Based on the response result, determining the connection state of the message middleware includes: in the case where the response result is that the message middleware successfully responds to the probe message, determining that the connection state is that the message middleware and the client are normally connected; in the case where the response result is that the message middleware fails to successfully respond to the probe message, determining that the connection state is that the message middleware and the client are abnormally connected.
11. The method according to claim 9, wherein, Based on the response time, determining the running state of the message middleware includes: in the case where the response time is less than or equal to a preset time threshold, determining that the running state is that the message middleware is running normally; in the case where the response time is greater than the preset time threshold, determining that the running state is that the message middleware is running abnormally.
12. The method according to claim 9, wherein The method further includes: in response to the running state being that the message middleware is running normally, based on the middleware identifier of the message middleware, storing the running state and the connection state into a middleware state table, where the middleware state table is deployed in the client; in response to the running state being that the message middleware is running abnormally, obtaining the first time node when the message middleware is detected to be running abnormally, and the second time node when it runs normally next time, and based on the middleware identifier, storing the running state, the first time node, the second time node, and the connection state into the middleware state table.
13. The method according to claim 1, wherein The method further includes: in response to the message queue sending failure, updating the running state of the message middleware to be that the message middleware is running abnormally, and obtaining other message middleware based on the middleware state table, where the current state of the other message middleware is that the other message middleware and the client are normally connected, and / or the other message middleware is running normally; in response to successfully obtaining the other message middleware, sending the message queue to the other message middleware; in response to failing to obtain the other message middleware, re-determining the current state of the message middleware according to a preset period, and in the case where it is determined that the current state of a target message middleware is that the target message middleware and the client are normally connected, and / or the target message middleware is running normally, sending the message queue to the target message middleware. The method further includes: in response to the message queue sending failure, updating the running state of the message middleware to be that the message middleware is running abnormally, and obtaining other message middleware based on the middleware state table, where the current state of the other message middleware is that the other message middleware and the client are normally connected, and / or the other message middleware is running normally; in response to successfully obtaining the other message middleware, sending the message queue to the other message middleware; in response to failing to obtain the other message middleware, re-determining the current state of the message middleware according to a preset period, and in the case where it is determined that the current state of a target message middleware is that the target message middleware and the client are normally connected, and / or the target message middleware is running normally, sending the message queue to the target message middleware.
14. A message sending method, comprising: In response to an input instruction acting on the operation interface, display a plurality of message queues received by at least one message middleware on the operation interface; In response to a send instruction acting on the operation interface, display the send result of the message queue on the operation interface, where the send result is used to characterize the result of sending the plurality of message queues according to the send priority based on the at least one message middleware, the send priority is determined based on the current state of the at least one message middleware, and the current state includes at least one of the following: connection state and running state, the connection state is used to characterize whether the message middleware and the client are normally connected, and the running state is used to characterize whether the message middleware is running normally.
15. A message sending method, comprising: Obtain a plurality of message queues received by at least one message middleware by calling a first interface, where the first interface includes a first parameter, and the parameter value of the first parameter includes the message queue; determine the current state of the at least one message middleware, where the current state includes at least one of the following: connection state and running state, the connection state is used to characterize whether the message middleware and the client are normally connected, and the running state is used to characterize whether the message middleware is running normally; determine the send priority of the plurality of message queues based on the current state of the at least one message middleware; use the at least one message middleware to send the plurality of message queues to the target client according to the send priority; output the send result of the message queue by calling a second interface, where the second interface includes a second parameter, and the parameter value of the second parameter includes the send result.
16. An electronic device, comprising: A memory storing an executable program; A processor for running the program, where when the program runs, it executes the method described in any one of claims 1 to 15.
17. A computer-readable storage medium, the computer-readable storage medium includes a stored executable program, where when the executable program runs, it controls the device where the computer-readable storage medium is located to execute the method described in any one of claims 1 to 15.
Citation Information
Patent Citations
Method for managing message oriented middlewares
CN107592215A
Message middleware system state checking method and device, equipment and storage medium
CN112433916A
Distributed message asynchronous notification middleware implementation method and system
CN112988428A
Efficient lightweight easy-to-use distributed network message middleware
CN113722127A
Method and device for processing message by using message middleware, and computer equipment
CN115695532A