[go: up one dir, main page]

CN102932444B - Load balancing module in finance real-time transaction system - Google Patents

Load balancing module in finance real-time transaction system Download PDF

Info

Publication number
CN102932444B
CN102932444B CN201210419239.3A CN201210419239A CN102932444B CN 102932444 B CN102932444 B CN 102932444B CN 201210419239 A CN201210419239 A CN 201210419239A CN 102932444 B CN102932444 B CN 102932444B
Authority
CN
China
Prior art keywords
event
network interface
interface card
load balancing
load
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.)
Active
Application number
CN201210419239.3A
Other languages
Chinese (zh)
Other versions
CN102932444A (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.)
SHANGHAI CHINA UNION LOYALTY CO Ltd
Original Assignee
SHANGHAI CHINA UNION LOYALTY CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI CHINA UNION LOYALTY CO Ltd filed Critical SHANGHAI CHINA UNION LOYALTY CO Ltd
Priority to CN201210419239.3A priority Critical patent/CN102932444B/en
Publication of CN102932444A publication Critical patent/CN102932444A/en
Application granted granted Critical
Publication of CN102932444B publication Critical patent/CN102932444B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

This application discloses the load balancing module in a kind of financial real-time transaction system, between terminal and background server cluster.Described load balancing module comprises at least two-server, and every platform load-balanced server all has one piece of foreground network interface card and one piece of backstage network interface card, and all adopts VRRP agreement.All foregrounds network interface card forms one group, externally has unique ip address and MAC Address, internally then divides into one piece of master control foreground network interface card and remaining backup foreground network interface card.All backstages network interface card also forms one group, externally has unique ip address and MAC Address, internally then divides into one piece of master control backstage network interface card and remaining backup backstage network interface card.Every platform load-balanced server has all run load balancing program, and this load balancing program comprises load balancer process, multi-host hot swap process and monitoring process; Multi-host hot swap process monitoring VRRP agreement wherein the master control foreground network interface card selected and master control backstage network interface card, and must on same load-balanced server both requiring.

Description

Load balancing module in finance real-time transaction system
Technical field
The application relates to a kind of financial real-time transaction system, particularly relates to the communication module between terminal and background server.
Background technology
People, when using the financial card such as bank card, prepaid card to carry out consumer sale, have just used financial real-time transaction system.Refer to Fig. 1, this is the simple principle schematic diagram of financial real-time transaction system, comprising:
---multiple terminal 10: for reading financial card image, and the transaction request including financial card image and Transaction Information is sent to background server 50, also receives the transaction results that background server 50 returns.Described terminal 10 comprises machine for punching the card (also claiming POS), is integrated with the cashier's machine etc. of function of swiping card,
---a background server 50: for receiving the transaction request from each terminal 10, after Transaction Information (such as dealing money etc.) being processed according to financial card image (card number, password etc. of such as financial card), transaction results is returned to each terminal 10.
In financial real-time transaction system, transaction request, transaction results are the message form meeting ISO8583 agreement.
In financial real-time transaction system shown in Fig. 1, the One's name is legion of terminal 10, the transaction request thus simultaneously sent may have thousands of bar, and this brings great pressure by the parallel processing capability of background server 50.For this reason, the financial real-time transaction system of practical application is provided with communication module 20 in the front end of background server 50, as shown in Figure 2.The communication module 20 newly increased for the transaction request of real-time reception from the short connected mode transmission of multiple terminal 10, and by its with long connected mode asynchronous transmission to background server 50; Also receive background server 50 with the transaction results of long connected mode asynchronous transmission, and it is sent it back each terminal 10 with short connected mode simultaneously.Described communication module 20 with adopt the short communication modes be connected between terminal 10, just connect when namely often carrying out a packet sending and receiving, disconnect immediately after transmitting-receiving.Described communication module 20 and the communication modes adopting length to be connected between background server 50, namely first connect and carry out packet sending and receiving again, connect also do not disconnect when not having packet sending and receiving.
Obviously, the transaction request of each terminal 10 is received synchronously, concurrently by communication module 20, be cached rear serial, sent to background server 50 asynchronously, which greatly enhances the responding ability to foreground (terminal 10), dramatically reduce again the pressure to backstage (background server 50).Meanwhile, communication module 20 goes back the transaction results that serial received background server 50 returns, and it is back to concurrently each terminal 10.
At present, described communication module 20 is mainly realized by a kind of special hardware device " net control device " (NetworkAccessController).Net control device comprises the various interfaces of the two pieces of network interface cards, bus, such as cable interface, serial line interface, modem interface etc. being called as first line of a couplet card and second line of a couplet card.Wherein, second line of a couplet card and terminal 10 carry out message communication by physical connection modes such as dial-up network, special line, local area network (LAN)s, first line of a couplet card and background server 50 carry out message communication by physical connection modes such as serial line interface, modem, local area network (LAN)s, are also subject to the control of internal routing table between second line of a couplet card and first line of a couplet card by internal bus swap data.
Described communication module 20 can be a net control device, also can be the multiple stage net control device of cascade.Such as shown in Figure 3, terminal 10a is positioned at Beijing, background server 50 is positioned at Shanghai City, terminal 10a connects the first net control device 21a as Beijing's node, this first net control device 21a connects the second net control device 21b as north China Region domain node again, this second net control device 21b connects the 3rd net control device 21c as Shanghai City root node again, and the 3rd net control device 21c directly connects background server 50.Now, between the first net control device 21a and terminal 10a, adopt short connecting communication, the cascade between each net control device and all adopt long connecting communication between the 3rd net control device 21c and background server 50.
The communication module 20 realized by net control device 21 has following defect:
One, background server 50 be financial institution for settlement of transactions, each financial institution usually only disposes a place in the world.Along with the fast development of financial transaction, background server 50 develops into the computer cluster based on distributed system gradually.And every platform net control device 21 all can only be connected to a background server 50, do not support computer cluster, naturally do not possess load-balancing function yet.
For background server cluster, independently communication module 20 can only be set separately for each background server 50 at present, and be each communication module 20 distributing terminals 10 according to the flow of message and number of concurrent.In practical application, because message flow and number of concurrent change at any time, the processing mode of this manual intervention is dumb, be difficult to adjustment.
Its two, net control device 21 does not support online backup function, can only adopt the mode that cold backs up.Once a certain net control device 21 breaks down, can only adopt the mode of manual reversion, cost is high, has a big risk.
Its three, the foreground number of connection that every platform net control device 21 can be supported is limited.Along with the fast development of financial transaction, while in peak period, number of transaction constantly rises, and this just needs constantly to purchase new net control device 21 and is deployed in communication module 20, adds operation and maintenance cost.
Summary of the invention
Technical problems to be solved in this application are to provide the load balancing module in a kind of financial real-time transaction system, for substituting the communication module being in same position in existing financial real-time transaction system.Described load balancing module may be used for background server cluster environment, and supports online backup, is also convenient to expanding treatment ability, and has higher handling property and stronger stability.
For solving the problems of the technologies described above, the load balancing module in the application's finance real-time transaction system is between terminal and background server cluster;
Described load balancing module comprises at least two-server, is multi-host hot swap relation or multimachine standby relation mutually between each load-balanced server; Every platform load-balanced server all has one piece of foreground network interface card and one piece of backstage network interface card, and all adopts VRRP agreement (Virtual Router Redundancy Protocol);
All foregrounds network interface card is formed one group by described VRRP agreement, and selects one piece of master control foreground network interface card, and remaining is as backup foreground network interface card; Also all backstages network interface card is also formed one group, and select one piece of master control backstage network interface card, remaining is as backup backstage network interface card;
Every platform load-balanced server includes load balancing submodule, multi-host hot swap submodule and monitoring submodule; Described load balancing submodule carries out task scheduling according to the load of each background server of background server cluster; Described multi-host hot swap submodule monitoring Virtual Router Redundancy Protocol the master control foreground network interface card select and master control backstage network interface card, and both requirements must on same load-balanced server; Described monitoring submodule is used for being restarted when load balancing submodule and/or multi-host hot swap submodule quit work; Phase mutually synchronization master control foreground network interface card and the information of master control backstage network interface card on which platform load-balanced server is gone back between described load balancing submodule and multi-host hot swap submodule.
Further, under multi-host hot swap relation, one group of foreground network interface card externally only has unique ip address and MAC Address, and one group of backstage network interface card externally also only has unique ip address and MAC Address; Under multimachine mutually standby relation, one group of foreground network interface card externally has x IP address and MAC Address, and one group of backstage network interface card externally also has x IP and MAC Address, and x is the number of load-balanced server standby mutually.
Further, described load balancing submodule is using message as thread; Be short connecting communication mode between described load balancing submodule and each terminal, and be long connecting communication mode between each background server.
Further, described load balancing submodule at intervals to the long order being connected the state sent for obtaining this long connection with each background server, and obtains the result that this order returns, and judges whether each long connection is interrupted thus;
Described order comprises the getsockopt function with SO_ERROR option, the getsockopt function with TCP_INFO option;
Described result comprises the RETRANSMIT territory in described SO_ERROR option, described TCP_INFO option; These two results any one show that a certain bar is long to be connected abnormal, then described load balancing submodule judges this long disconnecting, and stops the background server to correspondence to carry out task scheduling; Otherwise described load balancing submodule judges that this long connection is normal.
Further, described load balancing submodule sends buffering area for each background server is only arranged, and issues the message of this background server for buffer memory; (not arranging reception buffer zone) judges the long disconnecting of a certain bar when described load balancing submodule, then the data in the transmission buffering area arranged for corresponding background server in load-balanced server abandoned.
Further, described load-balanced server adopts the event-driven algorithm based on EPOLL, and EPOLL is the easily extensible I/O event notification mechanism that linux kernel provides;
Event is divided into three kinds of large classes by the described event-driven algorithm based on EPOLL, and according to priority sequence is from high to low: real-time event, ready event, synchronizing signal call event;
Described ready event is divided into again three kinds of groups, and according to priority sequence is from high to low: subprocess exits event, IO reads and writes event, time out event;
Described ready event its life cycle have from front to back registration, ready, perform, reclaim four kinds of states.
Further, described time out event just transfers ready state to from login state through the time pre-set; The CPU time is adopted during computing time.
Further, described IO reads and writes event needs to register when reading from some IO ports or write data in any process; When EPOLL mechanism send this IO port have data can for read, maybe can for write data time, this IO read and write event transfer ready state to.
Further, when ready event is in recovery state, do not discharge this memory headroom shared by ready event, so that can directly utilize this memory headroom during new ready event registration; Only have when memory source is not enough, the memory headroom shared by ready event reclaiming state just can be released.
Load balancing module in the application's finance real-time transaction system has the several functions such as multi-host hot swap (or multimachine is standby mutually), load balancing, event-driven, not only can the perfect communication module replaced in existing financial real-time transaction system, and had larger lifting in all many-sides such as function, performance, autgmentabilities.
Accompanying drawing explanation
Fig. 1 is the theoretical construct schematic diagram of financial real-time transaction system;
Fig. 2 is the practical structures schematic diagram of existing financial real-time transaction system;
Fig. 3 is by the schematic diagram of multiple stage net control device cascade as communication module in existing financial real-time transaction system;
Fig. 4 is the structural representation of the financial real-time transaction system of the application;
Fig. 5 is the flow chart of the health examination algorithm of the application;
Fig. 6 is the event classification chart had based on the event-driven algorithm of EPOLL mechanism of the application.
Description of reference numerals in figure:
10,10a is terminal; 20,20a, 20b, 20c are communication module; 30 is load balancing module; 31 is load-balanced server one; 32 is load-balanced server two; 50 is background server; 500 is background server cluster.
Embodiment
Refer to Fig. 4, the application's finance real-time transaction system comprises:
---multiple terminal 10: for reading financial card image, and transaction request is sent to background server cluster 500, also receives the transaction results that background server cluster 500 returns.
---load balancing module 30: for the transaction request of real-time reception from the short connected mode transmission of multiple terminal 10, and by its with long connected mode asynchronous transmission to background server cluster 500; Also receive background server cluster 500 with the transaction results of long connected mode asynchronous transmission, and it is sent it back each terminal 10 with short connected mode simultaneously.Described load balancing module 30 with adopt the short communication modes be connected between terminal 10.Described load balancing module 30 and the communication modes adopting length to be connected between background server cluster 500.
---background server cluster 500: for receiving the transaction request from load balancing module 30, after processing, returns to load balancing module 30 according to financial card image to Transaction Information by transaction results.
Described background server cluster 500 is made up of multiple background server 50.
Described load balancing module 30 is made up of at least two load-balanced server servers 31,32.Every platform load-balanced server all has two pieces of network interface cards, and one piece is carried out communication with each terminal 10 and is called foreground network interface card, and another block and each background server 50 carry out communication and be called backstage network interface card.All load-balanced servers all adopt VRRP agreement, to make all foregrounds network interface card (in physical significance) be formed one group, and select one piece of master control foreground network interface card, and remaining is as backup foreground network interface card.All backstages network interface card is still formed one group by described VRRP agreement, and selects one piece of master control backstage network interface card, and remaining is as backup backstage network interface card.
VRRP agreement is generally used for virtual flow-line, is single network card equipment in its applied environment.The application is applied to have in the computer environment of two pieces of network interface cards, such situation may be there is: the foreground network interface card of load-balanced server 1 is chosen to be master control foreground network interface card by VRRP agreement, the backstage network interface card of load-balanced server 2 32 is chosen to be master control backstage network interface card by VRRP agreement, and does not carry out exchanges data between these two pieces of physical network cards and thus create mistake.
Load balancing module 30 each station server 31,32 ... in all run have load balancing program, this load balancing program mainly comprises load balancer process, multi-host hot swap process and monitoring process.Multi-host hot swap process wherein monitor especially VRRP agreement the master control foreground network interface card selected and master control backstage network interface card, and must on same load-balanced server both requiring.Such as can adopt with the following method: when the foreground network interface card on a load-balanced server is chosen as master control foreground network interface card, then also elect the backstage network interface card on this load-balanced server as master control backstage network interface card forcibly.If election cannot be forced, then illustrate that load balancing module 30 or network environment are made mistakes, and now will report to the police in modes such as mails, and transfer artificial treatment to.
Also carry out synchronizing information between described load balancer process and multi-host hot swap process, synchronous information comprises: master control foreground network interface card and master control backstage network interface card are on which platform load-balanced server.
Described multi-host hot swap process can realize multi-host hot swap function, and namely only have load-balanced server 1 to carry out work under normal circumstances, load-balanced server 2 32 does not work; When load-balanced server 1 breaks down, then turn and carry out work by load-balanced server 2 32.Described multi-host hot swap process also can realize multimachine standby function mutually, and namely two load-balanced servers 31,32 carry out work independently of one another under normal circumstances, and are set to standby host each other; When a station server breaks down, the work of its process turns to be undertaken by another station server, and does not affect original work of the server of this catcher.Multi-host hot swap, multimachine are standby mutually all has ripe algorithm to be realized, and the application is no longer repeated.
Described load balancer process carries out task scheduling using message as thread between each background server 50, and this is the remarkable difference with existing load-balancing algorithm.In addition, as far as possible the foundation of carrying out task scheduling makes the live load of each background server 50 be maintained roughly the same.
Existing load-balancing algorithm with session (session) for thread.Session refers to the unimpeded process communicated to connect with swap data, termination of the communication connection that establishes a communications link between two nodes in communication network, maintains.
This balance dispatching taking session as the load-balancing algorithm of thread and cannot realize to server cluster veritably, illustrates as follows:
If it take session as the load-balancing algorithm of thread that web server clusters have employed existing, when the access request of a user is assigned to server A, and log in server A.Then in a short period of time, this user (such as determining whether same user with IP address) have issued again an access request, if do not have session to keep function, the request of this user probably can be assigned to server B.This time, this user did not log in, so this user will log in again.From the angle of user, he faced by be " one " web page server, he feels to need to repeat at short notice to log in, and thus Consumer's Experience is very bad.In order to promote Consumer's Experience, existing is that the load-balancing algorithm of thread all includes session and keeps function with session, within a period of time, the access request of same user is all distributed to same station server.So in fact, be not consider that the operating load of every station server is to carry out dispatching distribution completely, wherein doped with the factor that session keeps.Only for the access request of different user, existing with session be the load-balancing algorithm of thread due to without the need to considering that session keeps, just really achieve with the operating load of every station server to carry out dispatching distribution.
The application is using message as the thread of load-balancing algorithm.Described message is such as the message meeting ISO8583 agreement, comprises transaction request, transaction results etc.Owing to not associating each other between financial transaction, be independent of each other, even if thus multiple transaction request of sending of same terminal 10, also can distribute to the different server 50 in background server cluster 500.Therefore the load-balancing algorithm that the application adopts does not need session to keep function, and this makes each station server 50 in background server cluster 500 only obtain dispatching distribution according to operating load, thus the most balanced, play handling property fully.
Usually, described load balancer process is set up one with each station server 50 in background server cluster 500 and is only set up one and to be longly connected for message communication.Described load balancer process adopts health examination algorithm to know whether the connection between each station server 50 is interrupted, once disconnecting, stops carrying out dispatching distribution to it, recovers just to restart to carry out dispatching distribution to it once connect.Described health examination algorithm roughly can be described as: load balancer process at intervals to the long order being connected the state sent for obtaining this long connection with each station server 50, and obtains the result that this order returns.By analyzing described result, judge whether each long connection is interrupted.
The application exemplarily provides an embodiment of described health examination algorithm, as shown in Figure 5, comprises the steps:
1st step, arranges the SO_KEEPALIVE option of setsockopt function.Setsockopt function is the function that under LINUX system, (POSIX standard) is used for arranging socket Connecting quantity, is the abbreviation of setsocketoption.
Transmission Control Protocol is built-in with the inner health examination mechanism of KEEPALIVE, and way is roughly: send a packet at set intervals and receive response; If do not receive response in official hour, then repeat to send by certain time interval; If have sent N number of packet continuously all can not receive response, think and connect disconnection; As long as repeat have to receive a response in the packet sent just think that connection is not broken.
SO_KEEPALIVE is the option that setsockopt function is supported, is used for arranging the parameter of KEEPALIVE mechanism, comprises the standby time etc. repeating the time interval sending packet, maximum repetition transmission times, start-up check.The standby time of described start-up check refers to: when system is by connecting transmission data, then illustrate that this connection does not disconnect, KEEPALIVE mechanism does not send packet.After system stops transmission data, after predetermined time, KEEPALIVE mechanism just sends packet, and described predetermined time is exactly " standby time of start-up check ".
2nd step, described load balancer process is periodically connected to the long of each station server 50 the getsockopt function sent with SO_ERROR option, and obtains its SO_ERROR option returned.Getsockopt is the function that under LINUX system, (POSIX standard) is used for obtaining socket connectivity option, is the abbreviation of getsocketoption.SO_ERROR is the option that getsockopt function is supported, is used to check that whether the state that socket connects is abnormal, checks the check result of KEEPALIVE mechanism specifically.SO_ERROR option is generally one-bit digital, have one represent connect normal value (being such as 0) and multiple represent be connected exception value (be such as 1,2 ..., different value represents different abnormalities).
Described load balancer process is also periodically connected to the long of each station server 50 the getsockopt function sending and be used for TCP_INFO option, and obtains its TCP_INFO option returned.TCP_INFO is another option that getsockopt function is supported, is used for checking TCP connection state information.Comprise RETRANSMIT territory in TCP_INFO option, wherein describe current time packet and resend number of times in this long connection.Tcp data wraps in and sends unsuccessfully for the first time, behind very first time interval, will carry out second time and send; Send unsuccessfully in second time, after second time interval, third time transmission will be carried out; By that analogy, until arrive the maximum number of times of transmission of setting.And second time interval was the twice at very first time interval, the 3rd time interval was the twice in second time interval ...What described RETRANSMIT territory just described tcp data bag current time resends number of times, can obtain corresponding resending the time according to each time interval.
3rd step, once there be the SO_ERROR option display of certain long connection to connect abnormal, then described load balancer process judges this long disconnecting, stops to background server 50 allocating task corresponding to this long connection.
Connect normal long connection for the display of SO_ERROR option, then see the RETRANSMIT territory in these long TCP_INFO options connected.
If the RETRANSMIT territory display current time packet in these long TCP_INFO options connected is greater than default threshold value (time that namely resends is greater than default threshold value) at the number of times that resends of this long connection, then described load balancer process judges this long disconnecting, stops to background server 50 allocating task corresponding to this long connection.
If the RETRANSMIT territory display current time packet in these long TCP_INFO options connected is less than or equal to default threshold value at the number of times that resends of this long connection, then described load balancer process judges that this long connection is not interrupted, still to background server 50 allocating task corresponding to this long connection.
Described method the 1st step and the 2nd step are closely related, and only after arranging the relevant parameter of KEEPALIVE mechanism, the check result of the KEEPALIVE mechanism obtained is only timely, useful.Preferably, the span of each parameter that the application limits in SO_KEEPALIVE option is:
---the time interval repeating to send packet is 2 seconds.If this parameter arranges too littlely can affect network communication, because have a large amount of Packet Generations; If arrange to obtain the too promptness that checks of conference impact, possible netting twine interrupts just being found afterwards for a long time.
---maximum repetition transmission times is 7 times.If this parameter arranges to obtain the too little accuracy that can affect inspection, because have the situation of erroneous judgement; If arrange too conference impact check promptness.
---the standby time of start-up check is 1 second.This optimum configurations must be less, more can start as early as possible to check.
This group parameter can ensure to find that connection breaks down about 1+2*7=15 second above, and have passed test of many times and confirm that this group parameter is more stable.
In described method the 3rd step, if only rely on the check result of KEEPALIVE mechanism, then it has a critical defect: cannot disconnect the fault of (such as come off from cable interface, people for pulling up) by Timeliness coverage netting twine.When there is this type of fault, data are had in the transmission buffering area of system kernel, now KEEPALIVE mechanism can not work (after its transfer of data in the transmission buffering area of system kernel, just start working through set " standby time of start-up check "), the result obtained by SO_ERROR option is exactly the out-of-date check result of KEEPALIVE mechanism.The application combines TCP_INFO option simultaneously for this reason.Preferably, when RETRANSMIT territory display current time packet has resend 6 times (namely altogether have sent 7 times) or more time in this long connection, corresponding to the time of resending be about 15 seconds (8 seconds=15.75 seconds+the six time interval of 4 seconds+the five time intervals of 2 seconds+the four time intervals of 1 second+the three time interval, 0.25 second 0.5 second+the second time interval of very first time interval) or longer time, described load balancing module 30 just thinks the fault having occurred that netting twine disconnects, thus judges this long disconnecting.The application is comprehensive mutually with TCP_INFO option by SO_ERROR option, just intactly can cover the judgement of various failure condition.
In described method the 3rd step, except first judging SO_ERROR option, see outside TCP_INFO option again when the display of SO_ERROR option connects normal, SO_ERROR option and TCP_INFO option can also be judged simultaneously, as long as there have any one to show the long connection of a certain bar in these two results to be abnormal, then described load balancer process judges this long disconnecting.
In described method the 3rd step, when described load balancer process finds that long connection of setting up between itself and one or more server 50 in background server cluster 500 disconnects, be then no longer these server 50 allocating tasks.The transaction request be not yet disposed can not feed back to terminal 10, and terminal 10 does not receive transaction results in the given time then according to overtime trading processing, such as, send and rush positive transaction request.The positive transaction request of described punching refers to: if transaction request is before handled by background server cluster 500, create operation of withholing; So transaction request before is just cancelled by the positive transaction request of this punching, will withhold and return former account.If transaction request is before not yet handled by background server cluster 500, so the positive transaction request of this punching does not just operate.Meanwhile, described load balancer process sends buffering area for each connected background server 50 is all only provided with, and does not arrange reception buffer zone.Described transmission buffering area is used for buffer memory and sends to the messages such as the transaction request of background server 50.Once find that a certain bar long connection disconnects, the data in the transmission buffering area arranged for corresponding background server 50 just discard by the application.Arrange like this and can avoid the generation of following situation: once re-establish long connection between these background servers 50 with described load balancing module 30, if do not abandon the content sent in buffering area, then these background servers 50 will inevitably process the message sent in buffering area, and this just likely produces terminal 10 and thinks the contradiction situation of the transaction of time-out in background server cluster 500 but Successful Transaction.According to the method for the application, after long between these servers 50 with described load balancing module 30 is connected and recovers, just can start to receive new task, and the impact of task before can not being subject to.
The load-balanced server of the application all runs a load balancing program, and operationally this load balancing program is divided into multiple process (process) to perform, and each process is specifically divided into again multiple event (event) when performing.Also there is level between described process, such as, load balancing program comprises load balancer process, multi-host hot swap process and monitoring process, monitoring process is the parent process of other two processes, no matter they restarted for exiting (such as collapsing) time by any way in other two processes.
Load-balanced server described in the application adopts the event-driven algorithm based on EPOLL.EPOLL is the easily extensible I/O event notification mechanism that the linux kernel of more than 2.6 versions provides, and EPOLL mechanism externally provides the state of I/O interface, comprise each IO port whether have data to arrive can whether the free time can for write data etc. for reading.
Refer to Fig. 6, event is divided into three types by the event-driven algorithm based on EPOLL described in the application:
---real-time event, refers to the event caused by manual operation.Manual operation can start one or more process and perform, and the event corresponding to these processes just belongs to real-time event, must process with limit priority.
---ready event, have and only have three kinds, be that subprocess exits event, IO reads and writes event, time out event respectively, their priority each other sorts from high to low and is: subprocess exits event > IO and reads and writes event > time out event.These events enter ready event queue according to priority order from high to low, and ready event queue is first-in first-out (FIFO) queue, and the event first putting into ready event queue just first performs.
---synchronizing signal calls event, refers to the process to signal, and it is notify in the mode of signal that such as subprocess exits, and has some administrator command to be also with the mode process of signal as server exits.
These three kinds of event types sort from high to low according to priority and are: the ready event > synchronizing signal of real-time event > calls event, and the event type that the event type that priority is high is forever low than priority first performs.
Described ready event has following four kinds of states from front to back in its life cycle:
---registration, refers to the ready event of initialization, comprises the concrete kind, call back function parameter, the IO port that arrange ready event, the information such as process and state belonging to ready event.
---ready, refer to ready event in executable state at any time.
---perform, refer to the ready event of process.
---reclaim, after referring to that ready event is finished, do not discharge the memory headroom shared by this event, so that can directly utilize this memory headroom during new ready event registration.Only have when memory source is not enough, the memory headroom shared by ready event reclaiming state just can be released.
Described subprocess exits event registration when described load balancing program starts, be more particularly the registration when described multi-host hot swap process and load balancer process start, multi-host hot swap process and load balancer process are all created in the mode of the subprocess of monitoring process.In described load balancing program, monitoring process is the parent process of other all processes, and other all processes are subprocesss of monitoring process.When norator process exits, all can send one to parent process and exit signal, this is that a synchronizing signal calls event.Monitoring process receives after this exits signal, just subprocess is exited event and transfers ready state to.According to the order entering ready event queue, subprocess exits event and can be processed, and the subprocess being about to exit restarts, and registers a new subprocess and exit event.Then this old subprocess exits event and transfers recovery state to.
Described IO reads and writes event to be needed to register when reading from some IO ports or write data in any process.When EPOLL mechanism send this IO port have data can for read, maybe can for write data time, this IO read and write event transfer ready state to.According to the order entering ready event queue, this IO reads and writes event and can be processed, and namely reads or write data from this IO port, IO port, parameter and state can be passed to call back function during execution.Then this IO read-write event transfers recovery state to.
Described time out event is generally used for those affairs needing Timing Processing, such as aforesaid health examination algorithm.Time out event is also the registration when described load balancing program starts.Time through pre-setting after registration just transfers ready state to.It should be noted that time here adopts the CPU time, the CPU time has and only increases and the feature that can not artificially revise.According to the order entering ready event queue, this time out event can be processed.If the disposable time out event that can be disposed, just transfer recovery state to subsequently.If the time out event of Timing Processing, finally again can transfer self to login state in processing procedure, and not transfer recovery state to.
The event-driven algorithm tool based on EPOLL described in the application has the following advantages:
One, only give limited event type, and strict difinition priority, ensure that the stability run in linux system, avoid the deadlock situation between event through checking repeatedly.In order to avoid there is the deadlock situation between event, existing event-driven algorithm needs people for avoiding, and the application is then ensured by the event type pre-set and priority, the stability of calling program is improved greatly, decreases the difficulty of program development.
Existing event-driven algorithm has many, and more famous has libevent, libev, nginx etc.These event-driven algorithm all give more event type, and allow the priority of these event types self-defined.Such as libev event-driven algorithm gives error event, inspection event, customized event, regularly processes the event types such as event, cleaning event, subprocess duplicate event, they can between 255 priority self-defining.Once the priority definition error to some event type, the deadlock of whole program just may be caused.Such as, the priority that the synchronizing signal of signal calls event is defined to read and write event than IO high, can register in the processing procedure of then certain signal IO read and write event and to wait this IO read and write event handling complete after this synchronizing signal call event and just complete.The IO that so just there will be new registration reads and writes event and cannot process because priority is lower, and the synchronizing signal that priority is higher is called event and waited for this IO read-write event due to needs and cannot continue, and forms deadlock in logic.
Its two, adopt dull time management, acquiescence uses the CPU time.As CPU does not support, system time is used to be simulated, the mode of simulation is record the difference that keeper revises system time at every turn, add difference when the computing system time, to guarantee not by the impact of artificial amendment system time, and then ensure the timing accuracy of time out event.
Its three, compared with the I/O operation of traditional non-event, performance significantly improves.If use case mode does not run the obstruction read/write of IO read-write and IO, the process of IO read-write can be hung up, until read or write successfully.System described in the application obviously has a large amount of IO read-write operations, and this will certainly expend system resource in a large number.
Compared with existing event-driven method, the application runs based on EPOLL mechanism.EPOLL is IO event notification mechanism most effective under Linux, thus makes the performance of the event-driven algorithm of the application and autgmentability greatly improve.
Its four, in existing event-driven algorithm, i.e. releasing memory space after event is finished, new events registration redistributes memory headroom again.If the initialization of a large amount of events (namely register) all redistributes memory headroom, will greatly influential system performance.
The application is that ready event devises recovery state, is only used to preserve the memory headroom distributed.If the memory size needed for different event reality is different, so the application is that all events distribute maximum memory headroom without distinction, so that can be used for any event when reusing this memory headroom.Such new events, when registering, first utilizes the memory headroom distributed of the event of recovery state, only has the event when recovery state all to make to have used up, and just redistributes memory headroom by system.Described three kinds of ready events are just no longer distinguished in recovery state, and any ready event registration newly can use.Such as, after IO read-write event enters recovery state, its undelivered memory headroom can be used for the registration of new time out event.
Load balancing program described in the application is divided into two kinds of mode of operations, is respectively debugging mode and production model.Production model is used for real work, and debugging mode is then for the EMS memory error in discovery procedure running and filec descriptor mistake.
Program can take the memory source of computer in running, in the process for programme distribution internal memory, there will be following several mistake: the internal memory (freenon-allocatedbuffer) that memory accessing outside (bufferoverrun), release null pointer (freenullpointer), code reassignment null pointer (reallocnullpointer), release not do not distribute, repeatedly discharge same internal memory (doublefree), distribute in EP (end of program) time do not discharge (non-releasedbuffer).The significant problems such as these EMS memory errors may cause program run-time error, program is run unsuccessfully, computer corruption, will occur continuously and if do not solve these problems of EMS memory error.
Load balancing module described in the application have employed a kind of memory management algorithm under debugging mode, checks the Memory Allocation of load balancing program in running, release and the problem in using.This memory management algorithm is such:
One, under debugging mode, load balancing program, all can the larger actual memory space of memory headroom required by distribution ratio when requiring each time to obtain memory headroom.This actual memory space is divided into three sections, and middle one section is exactly required memory headroom size, and a bit of space of each overabsorption, front and back is all for recording the School Affairs data of memory boundary.
Its two, also can with the memory address after the type of extra this Memory Allocation of data structure records, file, function, line number, size, distribution in internal memory during each Memory Allocation.School Affairs is mainly used for the out-of-bounds access detecting internal memory, and the words School Affairs of out-of-bounds access will be destroyed.
Its three, during each Memory Allocation also can in disk log, comprise system when having carried out which kind of operation, there is the information such as which kind of result.
Under debugging mode, by analyzing whether complete, the extra data structure of above-mentioned School Affairs, log recording etc., discovery procedure design Memory Allocation problem whether can be there will be.
Filec descriptor (filedescriptor) is that system kernel is used for access file, and because its length is fixed, thus the quantity of filec descriptor is limited.In the process for programme distribution filec descriptor, there will be following several mistake: the filec descriptor opened do not close (non-closedfd) when EP (end of program), close do not open filec descriptor (closednon-openedfd), close empty descriptor (closebadfd), repeatedly close same descriptor (doubleclose), descriptor that PIPE opens closes half (onlycloseoneofpipefd).The significant problems such as these filec descriptor mistakes may cause program run-time error, program is run unsuccessfully, computer corruption, will occur continuously and if do not solve these problems of filec descriptor mistake.
Load balancing module described in the application have employed a kind of filec descriptor management algorithm under debugging mode, checks the distribution of the filec descriptor of load balancing program in running, release and the problem in using.This filec descriptor management algorithm is such:
One, under debugging mode, load balancing program when requiring each time to obtain filec descriptor, the type all can distributed with this filec descriptor of extra data structure records in internal memory, file, function, line number, size, open after the numerical value of filec descriptor.
Its two, when each filec descriptor distributes also can in disk log, comprise system when having carried out which kind of operation, there is the information such as which kind of result.
Under debugging mode, by analyzing above-mentioned extra data structure, log recording etc., discovery procedure design the assignment problem of filec descriptor whether can be there will be.
Load balancing module described in the application is used for substituting the communication module in existing financial real-time transaction system, thus must support the repertoire achieved by communication module.Wherein topmost is exactly real-time reception from the transaction request of the short connected mode transmission of multiple terminal, and by its with long connected mode asynchronous transmission to background server cluster; Also receive background server cluster with the transaction results of long connected mode asynchronous transmission, and it is sent it back each terminal with short connected mode simultaneously.What transmit in this process is exactly the message of ISO8583 protocol definition, and this message comprises TPDU (TransportProtocolDataUnit, TPDU), heading and application data.Wherein TDPU forms by three, is ID item (1 byte), destination address item (2 bytes), source address item (2 bytes) for identification message type respectively.Described ID item is generally 0x60 when message is correct, and be generally 0x68 during mistake, 0x represents hexadecimal number.Destination address item is exactly the mark of message recipient.Source address item is exactly the mark of message transmitting party.
Such as, in an actual financial real-time transaction system, between terminal 10 and background server 50, carry out transaction communication, but terminal 10 connect be actually load balancing module 30.The home address of terminal 10, load balancing module 30, background server 50 is respectively A, B, C, all represents the hexadecimal number of two bytes.The TPDU part of the message so sent to load balancing module 30 from terminal 10 is exactly <0x60, C, A>.Load balancing module 30 is after receiving this message, the TPDU of this message part is become <0x60, C, B>, records new source address B (identification load balance module 30) and the corresponding relation of old source address A (marking terminal 10) simultaneously.Described new source address B, in balance module 30 dynamic assignment, for different messages, can distribute different new source address B to record the corresponding relation of this message and terminal 10, thus determine this message should get back to which terminal 10.After this message is sent to background server 50 by load balancing module 30, the TPDU of this message part is become <0x60, B, C> by background server 50 again, exchanges by destination address and source address.This message, after background server 50 processes, sends it back load balancing module 30, and the TPDU of this message part is become <0x60, A, C> by load balancing module 30 third time, subsequently this message is sent it back terminal 10.
For load balancing module 30, the TDPU part carrying out the transaction request message of self terminal 10 of its reception is <0x60, C, A>, the TDPU part of its transaction request message sent to background server 50 is <0x60, C, B>, the TPDU part of its transaction results message from background server 50 received is <0x60, B, C>, the TPDU part of its transaction results message sent to terminal 10 is <0x60, A, C>.
For background server 50, the TDPU part of the transaction request message that it receives is <0x60, B, C>, the TPDU part of the transaction results message that it sends is <0x60, C, B>.
For terminal 10, the TDPU part of the transaction request message that it sends is <0x60, C, A>, the TPDU part of the transaction results message that it receives is <0x60, A, C>, middle processing procedure is transparent to terminal 10.
Because the application realizes load balancing module in the mode of computer run load balancing program, thus there is great autgmentability.Such as, can modify to the message format of ISO8583 protocol definition, be 4 bytes by the destination address item of TDPU and source address item by 2 byte expansion, such load balancing module support while the message amount of process just can by 2 16expand to 2 32.This expansion, owing to breaching the restriction of ISO8583 agreement, thus needs to carry out program upgrade to terminal and background server, can be used for concurrent transaction quantity and breaks through 2 16future.
Server in load balancing module described in the application needs configuration at least two to throw the net card, and one throws the net card for connecting the access of terminal, and another card of throwing the net is for connecting background server cluster.The isolation of throwing the net card by two is arranged, and can realize the isolation of the network segment, thus protect the fail safe of background server cluster well, improves flexibility when real network is disposed simultaneously.
These are only the preferred embodiment of the application, and be not used in restriction the application.For a person skilled in the art, the application can have various modifications and variations.Within all spirit in the application and principle, any amendment done, equivalent replacement, improvement etc., within the protection range that all should be included in the application.

Claims (9)

1. the load balancing module in financial real-time transaction system, is characterized in that, described load balancing module is between terminal and background server cluster;
Described load balancing module comprises at least two-server, is multi-host hot swap relation or multimachine standby relation mutually between each load-balanced server; Every platform load-balanced server all has one piece of foreground network interface card and one piece of backstage network interface card, and all adopts Virtual Router Redundancy Protocol;
All foregrounds network interface card is formed one group by described Virtual Router Redundancy Protocol, and selects one piece of master control foreground network interface card, and remaining is as backup foreground network interface card; Also all backstages network interface card is also formed one group, and select one piece of master control backstage network interface card, remaining is as backup backstage network interface card;
Every platform load-balanced server includes load balancing submodule, multi-host hot swap submodule and monitoring submodule; Described load balancing submodule carries out task scheduling according to the load of each background server of background server cluster; Described multi-host hot swap submodule for monitor Virtual Router Redundancy Protocol the master control foreground network interface card selected and master control backstage network interface card must at same load-balanced server both requiring; Described monitoring submodule is used for being restarted when load balancing submodule and/or multi-host hot swap submodule quit work; Phase mutually synchronization master control foreground network interface card and the information of master control backstage network interface card on which platform load-balanced server is gone back between described load balancing submodule with multi-host hot swap submodule.
2. the load balancing module in financial real-time transaction system according to claim 1, is characterized in that,
Under multi-host hot swap relation, one group of foreground network interface card externally only has unique ip address and MAC Address, and one group of backstage network interface card externally also only has unique ip address and MAC Address;
Under multimachine mutually standby relation, one group of foreground network interface card externally has x IP address and MAC Address, and one group of backstage network interface card externally also has x IP and MAC Address, and x is the number of load-balanced server standby mutually.
3. the load balancing module in financial real-time transaction system according to claim 1, is characterized in that, described load balancing submodule is using message as thread; Be short connecting communication mode between described load balancing submodule and each terminal, and be long connecting communication mode between each background server.
4. the load balancing module in financial real-time transaction system according to claim 1, it is characterized in that, described load balancing submodule is at intervals to the long order being connected the state sent for obtaining this long connection with each background server, and obtain this and order the result that returns, judge whether each long connection is interrupted thus;
Described order comprises the getsockopt function with SO_ERROR option, the getsockopt function with TCP_INFO option; Described getsockopt function is used for obtaining socket connectivity option, and described SO_ERROR option is used for checking that whether the state that socket connects is abnormal, and described TCP_INFO option is used for checking TCP connection state information;
Described result comprises the RETRANSMIT territory in described SO_ERROR option, described TCP_INFO option; Described RETRANSMIT territory describes current time packet and resends number of times in this long connection; These two results any one show that a certain bar is long to be connected abnormal, then load balancer process judges this long disconnecting, and stops the background server to correspondence to carry out task scheduling; Otherwise described load balancer process judges that this long connection is normal.
5. the load balancing module in financial real-time transaction system according to claim 4, is characterized in that, described load balancing submodule sends buffering area for each background server is only arranged, and sends to the message of this background server for buffer memory; When described load balancing submodule judges the long disconnecting of a certain bar, then the data in the transmission buffering area arranged for corresponding background server in load-balanced server are abandoned.
6. the load balancing module in financial real-time transaction system according to claim 1, is characterized in that, described load-balanced server adopts the event-driven algorithm based on EPOLL, and EPOLL is the easily extensible I/O event notification mechanism that linux kernel provides;
Event is divided into three kinds of large classes by the described event-driven algorithm based on EPOLL, and according to priority sequence is from high to low: real-time event, ready event, synchronizing signal call event;
Described ready event is divided into again three kinds of groups, and according to priority sequence is from high to low: subprocess exits event, IO reads and writes event, time out event;
Described ready event its life cycle have from front to back registration, ready, perform, reclaim four kinds of states.
7. the load balancing module in financial real-time transaction system according to claim 6, is characterized in that, described time out event just transfers ready state to from login state through the time pre-set; The CPU time is adopted during computing time.
8. the load balancing module in financial real-time transaction system according to claim 6, is characterized in that, described IO reads and writes event to be needed to register when reading from some IO ports or write data in any process; When EPOLL mechanism send this IO port have data can for read, maybe can for write data time, this IO read and write event transfer ready state to.
9. the load balancing module in financial real-time transaction system according to claim 6, it is characterized in that, when ready event is in recovery state, do not discharge this memory headroom shared by ready event, so that can directly utilize this memory headroom during new ready event registration; Only have when memory source is not enough, the memory headroom shared by ready event reclaiming state just can be released.
CN201210419239.3A 2012-10-29 2012-10-29 Load balancing module in finance real-time transaction system Active CN102932444B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210419239.3A CN102932444B (en) 2012-10-29 2012-10-29 Load balancing module in finance real-time transaction system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210419239.3A CN102932444B (en) 2012-10-29 2012-10-29 Load balancing module in finance real-time transaction system

Publications (2)

Publication Number Publication Date
CN102932444A CN102932444A (en) 2013-02-13
CN102932444B true CN102932444B (en) 2015-11-25

Family

ID=47647141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210419239.3A Active CN102932444B (en) 2012-10-29 2012-10-29 Load balancing module in finance real-time transaction system

Country Status (1)

Country Link
CN (1) CN102932444B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI706361B (en) 2019-05-31 2020-10-01 康和綜合證券股份有限公司 Transaction dispatching apparatus and method
TWI720113B (en) 2017-01-20 2021-03-01 香港商阿里巴巴集團服務有限公司 Method and device for processing telegrams

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294769B (en) * 2013-04-28 2016-02-03 中国工商银行股份有限公司 A kind of system and method for large server written document
CN104243481B (en) * 2014-09-24 2019-02-05 国家电网公司 A method and system for pre-processing data of electricity consumption information collection
CN105677451A (en) * 2014-11-18 2016-06-15 北京风行在线技术有限公司 Load balancing method and equipment used for multiple processes
CN106686040B (en) * 2015-11-10 2020-06-30 阿里巴巴集团控股有限公司 A message processing method and device
CN105357320A (en) * 2015-12-09 2016-02-24 浪潮电子信息产业股份有限公司 Multi-Web server load balancing system
CN105450540A (en) * 2015-12-14 2016-03-30 福建星网锐捷网络有限公司 Load balancing method and device as well as DHCP (dynamic host configuration protocol) server
CN105592163B (en) * 2016-01-25 2018-07-17 上海斐讯数据通信技术有限公司 A kind of communication means and system
CN107154880B (en) * 2016-03-03 2020-12-15 创新先进技术有限公司 System monitoring method and device
CN107666401B (en) * 2016-07-28 2021-05-04 平安科技(深圳)有限公司 Configuration information acquisition method and terminal
WO2018053687A1 (en) * 2016-09-20 2018-03-29 海能达通信股份有限公司 Service processing method, system and apparatus
CN106550009B (en) * 2016-09-20 2020-01-21 海能达通信股份有限公司 Service processing method, system and device
CN106506701A (en) * 2016-12-28 2017-03-15 北京奇艺世纪科技有限公司 A kind of server load balancing method and load equalizer
CN108055346B (en) * 2017-12-26 2020-12-22 广东睿江云计算股份有限公司 Method for optimizing mail terminal link
US12013769B2 (en) * 2018-05-31 2024-06-18 Siemens Aktiengesellschaft Hot-standby redundancy control system, method, control apparatus, and computer readable storage medium
CN108769227A (en) * 2018-06-04 2018-11-06 贵州数据宝网络科技有限公司 A kind of data trade SiteServer LBS
CN110830461B (en) * 2019-10-28 2021-08-20 杭州涂鸦信息技术有限公司 Cross-region RPC service calling method and system based on TLS long connection
CN112653620B (en) * 2020-12-21 2023-03-24 杭州迪普科技股份有限公司 Route processing method, device, equipment and computer readable storage medium
CN114066632A (en) * 2021-11-18 2022-02-18 中国银行股份有限公司 Transaction retransmission method and device
CN114844897B (en) * 2022-07-06 2022-11-04 深圳爱换电科技有限公司 Method and device for distributed dynamic adjustment of long connection service based on Internet of things

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158387A (en) * 2010-02-12 2011-08-17 华东电网有限公司 Protection fault information processing system based on dynamic load balance and mutual hot backup
CN102510407A (en) * 2011-11-22 2012-06-20 沈文策 Method and system for reading and writing microblog

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7359992B2 (en) * 2001-12-21 2008-04-15 International Business Machines Corporation Method of preserving symmetrical routing in a communication system based upon a server farm

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158387A (en) * 2010-02-12 2011-08-17 华东电网有限公司 Protection fault information processing system based on dynamic load balance and mutual hot backup
CN102510407A (en) * 2011-11-22 2012-06-20 沈文策 Method and system for reading and writing microblog

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
VRRP技术实现网络的路由冗余和负载均衡;邹润生;《计算机与信息技术》;20060430(第4期);第1-4节,附图1-2 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI720113B (en) 2017-01-20 2021-03-01 香港商阿里巴巴集團服務有限公司 Method and device for processing telegrams
TWI706361B (en) 2019-05-31 2020-10-01 康和綜合證券股份有限公司 Transaction dispatching apparatus and method

Also Published As

Publication number Publication date
CN102932444A (en) 2013-02-13

Similar Documents

Publication Publication Date Title
CN102932444B (en) Load balancing module in finance real-time transaction system
JP3640187B2 (en) Fault processing method for multiprocessor system, multiprocessor system and node
CN102880475B (en) Based on the real-time event disposal system of cloud computing and method in computer software
CN101902395B (en) System and method for managing resources on a host
US9164950B2 (en) Use tag clouds to visualize components related to an event
CN105989539A (en) Financial trading condition acquisition system and method
US20090187668A1 (en) Protocol Independent Server Replacement and Replication in a Storage Area Network
CN101102305A (en) System and method for managing network information processing
CN109960634A (en) A kind of method for monitoring application program, apparatus and system
CN110868278B (en) Method for dual-computer redundancy of communication front-end processor of rail transit comprehensive monitoring system
CN113872826B (en) Network card port stability test method, system, terminal and storage medium
CN105989537A (en) Security and financial derivative transaction risk control system and risk control method
CN114371912A (en) Virtual network management method of data center and data center system
US7743185B2 (en) Method, system, and computer program product for dynamically selecting software buffers for aggregation according to current system characteristics
CN109445862A (en) Network interface card redundant drive method under Windows system based on MUX
CN106131162B (en) A method of network service agent is realized based on IOCP mechanism
CN107666401A (en) A kind of configuration information obtaining method and terminal
CN108881060A (en) A kind of method and device handling communication message
CN118295954A (en) Data transmission method and communication system of processing card based on PCIe protocol
US20230168948A1 (en) Routing information transmission method and apparatus, and communication system
US11881982B2 (en) Transaction-based messaging and logging infrastructure for networking systems and computing devices
JP6134720B2 (en) Connection method
CN109428821B (en) Server, method for managing routing of mutual backup device and storage medium
CN116962184A (en) A method, system, terminal and medium for automatically deploying RoCE clusters
CN115426251A (en) Disaster recovery method, device and medium for cloud host

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant