CN112003949A - JMS message process distribution control system and method under WAS cluster - Google Patents

JMS message process distribution control system and method under WAS cluster Download PDF

Info

Publication number
CN112003949A
CN112003949A CN202010906170.1A CN202010906170A CN112003949A CN 112003949 A CN112003949 A CN 112003949A CN 202010906170 A CN202010906170 A CN 202010906170A CN 112003949 A CN112003949 A CN 112003949A
Authority
CN
China
Prior art keywords
message
processes
control table
processing application
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010906170.1A
Other languages
Chinese (zh)
Other versions
CN112003949B (en
Inventor
范啸风
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Ltd
Original Assignee
Bank of China Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN202010906170.1A priority Critical patent/CN112003949B/en
Publication of CN112003949A publication Critical patent/CN112003949A/en
Application granted granted Critical
Publication of CN112003949B publication Critical patent/CN112003949B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention provides a JMS message process distribution control system and a method under a WAS cluster, which comprises the following steps: the message acquisition module is used for acquiring the request message; the interception module is used for acquiring the message type and the operating node name of the request message; the process starting controller is used for accessing the message distribution control table by taking the message type as a screening condition and judging whether the current node is in a WAS node list allowing the message type to run or not; if the current node is in the node state and the resource idle rate is the maximum, subtracting 1 from the available process number of the current node, and starting a message processing application process to process request information; the message process monitor is used for acquiring a message processing application process list of the current node in operation and counting the number of message processing application processes according to message types; the control table updating unit is used for updating the available process number and the resource idle rate in the message distribution control table according to the number of the message processing application processes.

Description

JMS message process distribution control system and method under WAS cluster
Technical Field
The invention relates to the technical field of WEB application, in particular to a system and a method for controlling JMS message process distribution under a WAS cluster.
Background
The WAS (WebSphere Application Server) is part of the WebShperse product and is responsible for Application integration functions. The container serving as the websphere application program is operated and started, and the application developed based on the websphere middleware service function is maintained and executed in the container.
Referring to fig. 1, an architecture for intercepting, dispatching and processing external request messages by an application system under a WAS cluster is exemplarily shown. As shown in fig. 1, a message request of an external system enters a message queue inside the system through an interface, each WAS member in the WAS cluster has a JMS message listening process, and once a message is found in the message queue, a message processing application in the WAS server is triggered and subsequent logic processing is performed. This is the JMS message processing mode of the currently common WAS cluster architecture.
Referring to this example, it should be noted that the messages in the message queue can simultaneously trigger the JMS message listening processes on all the WAS members to read the messages from the message queue, and which WAS the JMS of the WAS read the message first starts the message processing application by whom, and the other JMS processes are empty. However, when there are multiple messages in the message queue at the same time, because the above mechanism is that multiple listening processes are polling, it is able to implement concurrent processing of message requests at multiple WAS servers. However, there are at least two disadvantages to this existing generic message handling model: the message process distribution cannot be realized in a differentiated manner, and the message process distribution cannot be optimized.
For example, the existing model cannot support the following two scenarios or requirements effectively:
for differentiation, if a certain type of message request is expected to be processed only on certain WAS member servers, for example, only a certain type of message is expected to be processed only on WAS1 and WAS2 but not on WAS3, the differentiation processing mode cannot be realized by the prior art.
For optimization, if it is desired that a certain message request be processed on a relatively idle WAS server, for example, a certain message can be processed on both WAS1 and WAS2, but WAS2 server resources are more idle and so processing on WAS2 servers can be specified rather than WAS1, which has not been possible in the prior art.
Therefore, a technical solution for realizing differentiated and optimized WAS cluster architecture JMS message distribution control, which can overcome the above disadvantages, is needed.
Disclosure of Invention
Aiming at the defects of the JMS message processing mode of the conventional general WAS cluster architecture, the invention provides a JMS message process distribution control system and a JMS message process distribution control method under a WAS cluster, wherein the aim of controlling the JMS message distribution under the cluster environment is fulfilled by designing a process starting controller and a globally shared message distribution control table on each WAS member; and a message distribution control table can configure which types of messages are processed on which WAS servers to realize differentiation, and record the process occupation condition of each WAS server to achieve optimization. The process starting controller and the message process monitor are two control logic components, after the JMS message monitoring process obtains the message, the processing logic of the controller is triggered, and the controller realizes differentiated and optimized message distribution control according to the information in the message distribution control table.
In a first aspect of the embodiments of the present invention, a system for controlling distribution of a JMS message process under a WAS cluster is provided, where the system includes:
the message acquisition module is used for acquiring the request message and putting the request message into a message queue;
the monitoring module is used for calling a JMS message monitoring process in the WAS cluster to monitor the message queue and obtain the message type and the running node name of the request message;
a process launch controller comprising: a control table access unit and a judgment unit; wherein,
the control table access unit is used for accessing the message distribution control table by taking the message type as a screening condition to obtain a WAS node list allowing the message type to run;
the judging unit is used for judging whether the current node is in a WAS node list allowing the message type to run; if so, judging whether the resource idle rate of the current node is the maximum; if the resource idle rate is maximum, subtracting 1 from the number of available processes of the current node, and starting a message processing application process to process the request message; if the request message is not in the message queue or the resource idle rate is not the maximum, the request message is placed back to the message queue;
a message progress monitor, comprising: a process statistic unit and a control table updating unit; wherein,
the process counting unit is used for acquiring a message processing application process list of the current node in operation and counting the number of message processing application processes according to message types;
and the control table updating unit is used for updating the number of available processes and the resource idle rate in the message distribution control table according to the number of the message processing application processes.
Further, the message distribution control table stores message types, the allowed operating WAS node names corresponding to each message type, the maximum number of processes, the number of available processes, and the resource idle rate.
Further, the message types at least include: debit request class, credit request class, statistical query request class, and notify class.
Further, the control table updating unit is specifically configured to:
calculating to obtain the number of available processes according to the number of the message processing application processes: N-M-P; wherein M is the maximum process number; p is the number of message processing application processes; n is the number of available processes;
and calculating to obtain the resource idle rate according to the number of available processes: r is N/M; wherein, P is the resource idle rate.
In a second aspect of the embodiments of the present invention, a method for controlling distribution of a JMS message process under a WAS cluster is provided, where the method includes:
acquiring a request message and putting the request message into a message queue;
calling a JMS message interception process in the WAS cluster to intercept the message queue, and acquiring the message type and the operating node name of the request message;
accessing a message distribution control table by taking the message type as a screening condition to obtain a WAS node list allowing the message type to run;
judging whether the current node is in a WAS node list allowing the message type to run;
if so, judging whether the resource idle rate of the current node is the maximum; if the resource idle rate is maximum, subtracting 1 from the number of available processes of the current node, and starting a message processing application process to process the request message;
if the request message is not in the message queue or the resource idle rate is not the maximum, the request message is placed back to the message queue;
acquiring a message processing application process list of a current node in operation, and counting the number of message processing application processes according to message types;
and updating the number of available processes and the resource idle rate in the message distribution control table according to the number of the message processing application processes.
Further, the message distribution control table stores message types, the allowed operating WAS node names corresponding to each message type, the maximum number of processes, the number of available processes, and the resource idle rate.
Further, the message types at least include: debit request class, credit request class, statistical query request class, and notify class.
Further, updating the number of available processes and the resource idle rate in the message distribution control table according to the number of the message processing application processes, including:
calculating to obtain the number of available processes according to the number of the message processing application processes: N-M-P; wherein M is the maximum process number; p is the number of message processing application processes; n is the number of available processes;
and calculating to obtain the resource idle rate according to the number of available processes: r is N/M; wherein, P is the resource idle rate.
In a third aspect of the embodiments of the present invention, a computer device is provided, which includes a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor implements a method for controlling distribution of a JMS message process under a WAS cluster when executing the computer program.
In a fourth aspect of the embodiments of the present invention, a computer-readable storage medium is provided, in which a computer program is stored, and the computer program, when executed by a processor, implements a method for controlling distribution of a JMS message process under a WAS cluster.
The JMS message process distribution control system and method under the WAS cluster can trigger the process to start the processing logic of the controller after the JMS message interception process acquires the message, the controller distributes the information in the control table according to the message and updates the information in the message distribution control table through the message process monitor, thereby realizing differentiated and optimized message distribution control and meeting the message processing under different scenes and requirements under the condition of ensuring the response request throughput.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is an architecture diagram illustrating interception, dispatch, and processing of external request messages by an application system under a WAS cluster in the prior art.
Fig. 2 is a schematic structural diagram of a JMS message process distribution control system under the WAS cluster according to an embodiment of the present invention.
Fig. 3 is a schematic diagram of a JMS message process distribution architecture under the WAS cluster according to a specific embodiment of the present invention.
FIG. 4 is a logic diagram of a process start controller according to an embodiment of the present invention.
FIG. 5 is a logic diagram of a message progress monitor in accordance with an embodiment of the present invention.
Fig. 6 is a flowchart illustrating a method for controlling distribution of JMS message processes in a WAS cluster according to an embodiment of the present invention.
Fig. 7 is a schematic structural diagram of a computer device according to an embodiment of the present invention.
Detailed Description
The principles and spirit of the present invention will be described with reference to a number of exemplary embodiments. It is understood that these embodiments are given solely for the purpose of enabling those skilled in the art to better understand and to practice the invention, and are not intended to limit the scope of the invention in any way. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
As will be appreciated by one skilled in the art, embodiments of the present invention may be embodied as a system, apparatus, device, method, or computer program product. Accordingly, the present disclosure may be embodied in the form of: entirely hardware, entirely software (including firmware, resident software, micro-code, etc.), or a combination of hardware and software.
According to the embodiment of the invention, a system and a method for controlling the distribution of JMS message processes under a WAS cluster are provided. The invention achieves the purpose of controlling JMS message distribution in a cluster environment by designing a 'process starting controller' and a globally shared 'message distribution control table' in each WAS member; and what types of messages can be configured through a message distribution control table to be processed on which WAS servers to realize differentiation, and the process occupation condition of each WAS server is recorded to achieve optimization. The 'process starting controller' and the 'message process monitor' are two control logic components, after the JMS message interception process acquires the message, the processing logic of the controller is triggered, and the controller realizes differentiated and optimized message distribution control according to the information in the 'message distribution control table'.
In the embodiments of the present invention, terms to be described include:
WebSphere: WebSphere is a business transaction middleware developed by IBM. The system comprises an application program and middleware infrastructure required by cross-product calling, and provides reliable, flexible and robust software platform support for enterprise-level applications.
Was (websphere Application server): WAS is part of the webshell product and is responsible for application integration functions. The container serving as the websphere application program is operated and started, and the application developed based on the websphere middleware service function is maintained and executed in the container.
WAS clustering: the method comprises the following steps that a plurality of WAS servers run simultaneously, each WAS server is basically configured with the same hardware resources, the same application is deployed, and the high availability of an application system is ensured, so that the architecture is the WAS cluster.
JMS: JMS (Java Message Service) application program interface is an API (application program interface) facing to Message middleware in a Java platform and is used for sending and receiving messages between two application programs and realizing application asynchronous communication. In a WAS cluster, each WAS server will start a JMS process to monitor the message buffer pool, and if there is a message entering the buffer pool, the JMS will start a message processing process in the local WAS server to process the message in the buffer pool.
The principles and spirit of the present invention are explained in detail below with reference to several representative embodiments of the invention.
Fig. 2 is a schematic structural diagram of a JMS message process distribution control system under the WAS cluster according to an embodiment of the present invention. As shown in fig. 2, the system includes:
a message acquiring module 110, configured to acquire a request message and place the request message into a message queue;
the interception module 120 is configured to invoke a JMS message interception process in the WAS cluster to intercept the message queue, and obtain a message type and a running node name of the request message;
a process start controller 130 comprising: a control table access unit 131 and a judgment unit 132; wherein,
the control table access unit 131 is configured to access a message distribution control table by using the message type as a screening condition, and obtain a WAS node list allowing the message type to run;
the determining unit 132 is configured to determine whether the current node is in a WAS node list allowing the message type to run; if so, judging whether the resource idle rate of the current node is the maximum; if the resource idle rate is maximum, subtracting 1 from the number of available processes of the current node, and starting a message processing application process to process the request message; if the request message is not in the message queue or the resource idle rate is not the maximum, the request message is placed back to the message queue;
a message progress monitor 140, comprising: a process statistics unit 141 and a control table update unit 142; wherein,
the process counting unit 141 is configured to obtain a list of message processing application processes in which a current node is running, and count the number of message processing application processes according to a message type;
the control table updating unit 142 is configured to update the number of available processes and the resource idle rate in the message distribution control table according to the number of message processing application processes.
In an embodiment, the message distribution control table stores message types, the allowed operating WAS node names corresponding to each message type, the maximum number of processes, the number of available processes, and the resource idle rate. Wherein the message types include at least: debit request class, credit request class, statistical query request class, and notify class.
Further, the control table updating unit 142 is specifically configured to:
calculating to obtain the number of available processes according to the number of the message processing application processes: N-M-P; wherein M is the maximum process number; p is the number of message processing application processes; n is the number of available processes;
and calculating to obtain the resource idle rate according to the number of available processes: r is N/M; wherein, P is the resource idle rate.
It should be noted that although several modules of the JMS message process distribution control system under the WAS cluster are mentioned in the above detailed description, such partitioning is merely exemplary and not mandatory. Indeed, the features and functionality of two or more of the modules described above may be embodied in one module according to embodiments of the invention. Conversely, the features and functions of one module described above may be further divided into embodiments by a plurality of modules.
For a clearer explanation of the JMS message process distribution control system under the WAS cluster, a specific embodiment is described below.
Fig. 3 is a schematic diagram of a JMS message process distribution architecture under the WAS cluster according to an embodiment of the present invention. Comparing fig. 1 and fig. 3, compared with the prior art, the present invention is provided with a message distribution control table, a process start controller and a message process monitor.
For the message distribution control table, referring to table 1, an exemplary message distribution control table is shown.
Table 1 message distribution control table
Message type Allowing node names to run Maximum number of passes Number of available processes Resource idleness ratio
AA WAS1 5 3 0.60
AA WAS2 6 2 0.33
AA WAS3 4 2 0.50
BB WAS1 5 4 0.80
BB WAS2 5 1 0.20
CC WAS2 6 3 0.50
CC WAS3 6 3 0.50
Wherein, each item in the message distribution control table is explained as follows:
1. message type: different types of messages are cached in the message queue, such as a debit request class, a credit request class, a statistical query request class, a notification class and the like, which can be analyzed in the messages, and through maintenance of a control table, which type of messages run on which WAS nodes can be controlled, so as to realize differential control of message distribution.
2. Allow run node name: as shown in fig. 3, the WAS node name under the WAS cluster includes: WAS1, WAS2, and WAS 3.
3. Maximum number of passes: on each WAS node, configuring the maximum allowable running process number for each message type to accurately control the maximum resource usage of a certain type of message on a certain node.
4. Number of available processes: the number of processes that can be run by each WAS node for each type of message is embodied. The available process number is the maximum process number-the running process number.
5. Resource idle rate: the available process number/maximum process number is the resource idle rate, and the parameter can be used for judging the busy and idle condition of one WAS node resource, so as to realize the optimization of message distribution.
For the process start controller:
referring to FIG. 4, a logic diagram of a process start controller according to an embodiment of the invention is shown. As shown in fig. 4, after the JMS reads the message from the message queue, the "process start controller" is called first, with the message type and the running node as parameters.
Different from the prior art, the invention does not directly call the message processing application program, but judges whether the message processing application program is started or not by the internal logic processing of the progress starting controller, and the local message processing program can be started by the progress starting controller only if the process starting controller meets the starting condition.
If the JMS acquired message does not accord with the starting condition of the node, the message is not processed, and the JMS of the node which accords with the condition is waited to process.
For a message progress monitor:
referring to fig. 5, a logic diagram of a message progress monitor according to an embodiment of the invention is shown. As shown in FIG. 5, in order to avoid modification or intrusion of the apparatus of the present invention to normal application logic, the number of available processes is monitored by the "message process controller", and the "message distribution control table" is maintained at the same time, instead of maintaining the message distribution control table when the application program is finished.
Specifically, every n milliseconds (n available parameter maintenance) is performed, the message process monitor on the WAS is started, the message processing process of the node is queried through the own command (such as ps) of the operating system, the number of the message processing processes is counted, the number of available processes and the resource idle rate are calculated according to the running number and the maximum number of processes in the message distribution control table, and the data are recorded in the message distribution control table.
Having described the method of the exemplary embodiment of the present invention, next, a method of controlling distribution of a JMS message process under a WAS cluster of the exemplary embodiment of the present invention is described with reference to fig. 6.
Based on the same inventive concept, the invention also provides a method for controlling the distribution of the JMS message process under the WAS cluster, as shown in FIG. 6, the method comprises the following steps:
step S601, obtaining request information and putting the request information into an information queue;
step S602, a JMS message interception process in the WAS cluster is called to intercept the message queue, and the message type and the running node name of the request message are obtained;
step S603, accessing a message distribution control table by taking the message type as a screening condition to obtain a WAS node list allowing the message type to run;
step S604, judging whether the current node is in a WAS node list allowing the message type to run;
step S605, if yes, judging whether the resource idle rate of the current node is maximum;
step S606, if the resource idle rate is maximum, subtracting 1 from the available process number of the current node, and starting the message processing application process to process the request message;
step S607, if the request message is not in the message queue or the resource idle rate is not the maximum, the request message is put back to the message queue;
step S608, obtaining a list of message processing application processes of which the current node is in operation, and counting the number of the message processing application processes according to message types;
and step S609, updating the number of available processes and the resource idle rate in the message distribution control table according to the number of the message processing application processes.
In an embodiment, the message distribution control table stores message types, the allowed operating WAS node names corresponding to each message type, the maximum number of processes, the number of available processes, and the resource idle rate.
Wherein the message types include at least: debit request class, credit request class, statistical query request class, and notify class.
In an embodiment, the detailed procedure of updating the message distribution control table in step S609 is as follows:
step S6091, calculating the number of available processes according to the number of the message processing application processes: N-M-P; wherein M is the maximum process number; p is the number of message processing application processes; n is the number of available processes;
step S6092, calculating to obtain the resource idle rate according to the available process number: r is N/M; wherein, P is the resource idle rate.
It should be noted that although the operations of the method of the present invention have been described in the above embodiments and the accompanying drawings in a particular order, this does not require or imply that these operations must be performed in this particular order, or that all of the operations shown must be performed, to achieve the desired results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions.
Based on the aforementioned inventive concept, as shown in fig. 7, the present invention further provides a computer device 700, which includes a memory 710, a processor 720, and a computer program 730 stored on the memory 710 and operable on the processor 720, wherein the processor 720 implements the aforementioned method for controlling the distribution of the JMS message process under the WAS cluster when executing the computer program 730.
Based on the foregoing inventive concept, the present invention provides a computer-readable storage medium, which stores a computer program, and when the computer program is executed by a processor, the computer program implements the method for controlling the distribution of the JMS message process under the WAS cluster.
The JMS message process distribution control system and method under the WAS cluster can trigger the process to start the processing logic of the controller after the JMS message interception process acquires the message, the controller distributes the information in the control table according to the message and updates the information in the message distribution control table through the message process monitor, thereby realizing differentiated and optimized message distribution control and meeting the message processing under different scenes and requirements under the condition of ensuring the response request throughput.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
Finally, it should be noted that: the above-mentioned embodiments are only specific embodiments of the present invention, which are used for illustrating the technical solutions of the present invention and not for limiting the same, and the protection scope of the present invention is not limited thereto, although the present invention is described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: any person skilled in the art can modify or easily conceive the technical solutions described in the foregoing embodiments or equivalent substitutes for some technical features within the technical scope of the present disclosure; such modifications, changes or substitutions do not depart from the spirit and scope of the embodiments of the present invention, and they should be construed as being included therein. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (10)

1. A JMS message process distribution control system under a WAS cluster, the system comprising:
the message acquisition module is used for acquiring the request message and putting the request message into a message queue;
the monitoring module is used for calling a JMS message monitoring process in the WAS cluster to monitor the message queue and obtain the message type and the running node name of the request message;
a process launch controller comprising: a control table access unit and a judgment unit; wherein,
the control table access unit is used for accessing the message distribution control table by taking the message type as a screening condition to obtain a WAS node list allowing the message type to run;
the judging unit is used for judging whether the current node is in a WAS node list allowing the message type to run; if so, judging whether the resource idle rate of the current node is the maximum; if the resource idle rate is maximum, subtracting 1 from the number of available processes of the current node, and starting a message processing application process to process the request message; if the request message is not in the message queue or the resource idle rate is not the maximum, the request message is placed back to the message queue;
a message progress monitor, comprising: a process statistic unit and a control table updating unit; wherein,
the process counting unit is used for acquiring a message processing application process list of the current node in operation and counting the number of message processing application processes according to message types;
and the control table updating unit is used for updating the number of available processes and the resource idle rate in the message distribution control table according to the number of the message processing application processes.
2. The system of claim 1, wherein the message distribution control table stores message types, allowed operating WAS node names corresponding to each message type, maximum number of processes, number of available processes, and resource idleness.
3. The system of claim 2 for controlling the distribution of JMS message processes under a WAS cluster, wherein the message types include at least: debit request class, credit request class, statistical query request class, and notify class.
4. The JMS message process distribution control system under a WAS cluster according to claim 2, wherein the control table updating unit is specifically configured to:
calculating to obtain the number of available processes according to the number of the message processing application processes: N-M-P; wherein M is the maximum process number; p is the number of message processing application processes; n is the number of available processes;
and calculating to obtain the resource idle rate according to the number of available processes: r is N/M; wherein, P is the resource idle rate.
5. A JMS message process distribution control method under WAS cluster is characterized in that the method comprises the following steps:
acquiring a request message and putting the request message into a message queue;
calling a JMS message interception process in the WAS cluster to intercept the message queue, and acquiring the message type and the operating node name of the request message;
accessing a message distribution control table by taking the message type as a screening condition to obtain a WAS node list allowing the message type to run;
judging whether the current node is in a WAS node list allowing the message type to run;
if so, judging whether the resource idle rate of the current node is the maximum; if the resource idle rate is maximum, subtracting 1 from the number of available processes of the current node, and starting a message processing application process to process the request message;
if the request message is not in the message queue or the resource idle rate is not the maximum, the request message is placed back to the message queue;
acquiring a message processing application process list of a current node in operation, and counting the number of message processing application processes according to message types;
and updating the number of available processes and the resource idle rate in the message distribution control table according to the number of the message processing application processes.
6. The method for controlling distribution of JMS message processes under a WAS cluster according to claim 5, wherein the message distribution control table stores message types, the allowed operating WAS node names corresponding to each message type, the maximum number of processes, the number of available processes, and the resource idle rate.
7. The method of controlling the distribution of JMS message processes under a WAS cluster according to claim 6, wherein the message types at least include: debit request class, credit request class, statistical query request class, and notify class.
8. The method of claim 6, wherein updating the number of available processes and the resource idleness in the message distribution control table according to the number of message processing application processes comprises:
calculating to obtain the number of available processes according to the number of the message processing application processes: N-M-P; wherein M is the maximum process number; p is the number of message processing application processes; n is the number of available processes;
and calculating to obtain the resource idle rate according to the number of available processes: r is N/M; wherein, P is the resource idle rate.
9. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the method of any of claims 5 to 8 when executing the computer program.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program which, when executed by a processor, implements the method of any of claims 5 to 8.
CN202010906170.1A 2020-09-01 2020-09-01 JMS message process distribution control system and method under WAS cluster Active CN112003949B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010906170.1A CN112003949B (en) 2020-09-01 2020-09-01 JMS message process distribution control system and method under WAS cluster

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010906170.1A CN112003949B (en) 2020-09-01 2020-09-01 JMS message process distribution control system and method under WAS cluster

Publications (2)

Publication Number Publication Date
CN112003949A true CN112003949A (en) 2020-11-27
CN112003949B CN112003949B (en) 2022-09-13

Family

ID=73465100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010906170.1A Active CN112003949B (en) 2020-09-01 2020-09-01 JMS message process distribution control system and method under WAS cluster

Country Status (1)

Country Link
CN (1) CN112003949B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1643506A (en) * 2002-03-29 2005-07-20 国际商业机器公司 Most eligible server in a common work queue environment
US20100174696A1 (en) * 2009-01-02 2010-07-08 International Business Machines Corporation Agnostic processing of resource requests to message queues and sequential files
CN106302565A (en) * 2015-05-12 2017-01-04 浙江格林蓝德信息技术有限公司 The dispatching method of service server and system
CN108776934A (en) * 2018-05-15 2018-11-09 中国平安人寿保险股份有限公司 Distributed data computational methods, device, computer equipment and readable storage medium storing program for executing
CN111459689A (en) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 Message processing system and method based on distributed queue

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1643506A (en) * 2002-03-29 2005-07-20 国际商业机器公司 Most eligible server in a common work queue environment
US20100174696A1 (en) * 2009-01-02 2010-07-08 International Business Machines Corporation Agnostic processing of resource requests to message queues and sequential files
CN106302565A (en) * 2015-05-12 2017-01-04 浙江格林蓝德信息技术有限公司 The dispatching method of service server and system
CN108776934A (en) * 2018-05-15 2018-11-09 中国平安人寿保险股份有限公司 Distributed data computational methods, device, computer equipment and readable storage medium storing program for executing
CN111459689A (en) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 Message processing system and method based on distributed queue

Also Published As

Publication number Publication date
CN112003949B (en) 2022-09-13

Similar Documents

Publication Publication Date Title
US20130318512A1 (en) Hot Pluggable Extensions for Access Management System
CN108319513B (en) Message transmission method and device in multi-partition operating system
CN109766172B (en) Asynchronous task scheduling method and device
EP2972824B1 (en) Computer system using in-service software upgrade
US20130159385A1 (en) System and Method for Performing Centralized Common Tasks for a Set of Functions
CN101025698A (en) Apparatus for forcibly terminating thread blocked on input/output operation and method for the same
CN114189525B (en) Service request method and device and electronic equipment
CN110569250A (en) Management method and device for analysis library of Internet of things network element
CN113157411A (en) Reliable configurable task system and device based on Celery
US20200310828A1 (en) Method, function manager and arrangement for handling function calls
CN115357403A (en) Micro-service system for task scheduling and task scheduling method
CN109714214B (en) Server exception handling method and management equipment
CN111314241A (en) Task scheduling method and scheduling system
CN110928746A (en) Configurable service processing system, method, device and storage medium
CN112099921B (en) Java application system preheating method and system based on JVM
CN111314397A (en) Message processing method and device based on Swoole framework and Yaf framework
CN112003949B (en) JMS message process distribution control system and method under WAS cluster
CN114448686A (en) Cross-network communication device and method based on micro-service
CN107862040B (en) Method and device for updating data in cache of application instance and cluster
US10846156B2 (en) Methods, devices and computer program products for managing software function
GB2456201A (en) Notification of a background processing event in an enterprise resource planning system
CN115102999B (en) DevOps system, service providing method, storage medium and electronic device
CN114444868A (en) Warehouse management system and method based on micro-service technology
CN109460291B (en) Electronic device, method for elastically controlling server cluster and storage medium
CN117076007B (en) Method and device for reducing intrusion of middle platform architecture codes and middle platform system

Legal Events

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