Dual-active deployment method and system for bank counter system
By deploying the server in two clusters within the bank counter system and employing TCP long connections and data classification synchronization strategies, the problem of automatic switching in existing technologies was solved, enabling seamless business switching and efficient resource utilization, and ensuring the continuous and stable operation of the bank counter system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- IND BANK CO
- Filing Date
- 2023-03-31
- Publication Date
- 2026-06-19
AI Technical Summary
The existing disaster recovery solution for bank counter systems cannot achieve automatic switching during data-level backup, resulting in business interruption in the event of a disaster, and it does not make full use of existing server resources.
The counter system server is divided into two clusters deployed in different data centers. The client is configured with two server lists and communicates via TCP long connections. It automatically selects a backup server to connect to and adopts a data classification and synchronization strategy, including real-time and non-real-time synchronization, to ensure data synchronization and switching between different data centers.
It enables seamless switching to a backup data center in the event of a data center failure, ensuring business continuity, making full use of existing server resources, reducing costs, and meeting the requirements for lightweight and low-risk multi-active seamless switching.
Smart Images

Figure CN116846901B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the financial field, specifically to a method and system for active-active deployment of a bank counter system. Background Technology
[0002] As the digital transformation of the financial industry continues to deepen, the continuous and stable operation of business systems has become the most fundamental requirement for information technology construction. Disaster recovery, as a basic guarantee for business continuity, has also become the most basic operational security facility for all industries.
[0003] At the technical architecture level, the "two-site, three-center" concept and architecture have become synonymous with disaster recovery. The standard practice is to build two production data centers in different cities, and then build a dedicated disaster recovery center in one of those cities, meeting regulatory requirements that production and disaster recovery be more than 1,000 kilometers apart. Therefore, the "two-site, three-center" disaster recovery solution replicates data over a wide area network through database replication or storage replication technologies. The three core elements are: database, storage, and network.
[0004] This disaster recovery system architecture has both significant advantages and disadvantages. The advantage is the high versatility of its database and storage replication technology, which is transparent to applications. The disadvantage is that this backup is still at the data level; between RPO (Recovery Point Objective, the maximum amount of data loss an enterprise can tolerate) and RTO (Recovery Time Objective, the recovery time an enterprise can tolerate), data security is prioritized. Therefore, disaster recovery centers built with huge investments are often only used for cold backups, also known as single-active, requiring manual switching between production and disaster recovery centers when needed.
[0005] Patent document CN112561493A (application number: CN202011539227.5) discloses a method and apparatus for switching bank counter systems. It first acquires the configuration information of the counter system when receiving a business request, as the first configuration information. Next, it determines whether the first configuration information matches the information in the business request. If the first configuration information does not match the business request information, it acquires the second configuration information corresponding to the business request information. This second configuration information is the configuration information of the target counter system corresponding to the business request, i.e., the configuration information of the bank counter system capable of processing the business request. Finally, it replaces the current bank counter system configuration information with the second configuration information to configure the target counter system. However, this invention does not fully utilize existing server resources. Summary of the Invention
[0006] To address the shortcomings of existing technologies, the purpose of this invention is to provide a dual-active deployment method and system for bank counter systems.
[0007] A dual-active deployment method for a bank counter system provided by the present invention includes:
[0008] Step S1: Deploy the counter system server in two clusters;
[0009] Step S2: Configure two server lists in the counter system client, and communicate between the counter system client and the counter system server via a TCP long connection;
[0010] Step S3: When all counter system servers in the main server list cannot be connected, the counter system client will automatically select a counter system server in the backup service list to connect to.
[0011] Preferably, in step S1:
[0012] The counter service system server is deployed independently in two different data centers, each supporting all industry-wide services. Daily, the branch counters connect to the different data centers according to a preset strategy. When a data center becomes unavailable, the branch counters automatically switch to the available data center.
[0013] The counter system server is divided into two clusters and deployed in data centers A and B respectively. The counter terminals connect to either A or B depending on their region.
[0014] Preferably, the two clusters of the counter system have independent databases;
[0015] Depending on the implementation method, data synchronization solutions include:
[0016] Real-time synchronization is achieved by providing external interfaces for data synchronization; two main interfaces for querying and adding, deleting, and modifying data are developed, and corresponding sub-implementation classes are developed for the addition, deletion, and modification of corresponding tables, and data synchronization is performed by calling remote centers, dual centers, and designated centers;
[0017] Non-real-time synchronization; synchronization is achieved by exporting and importing data via scripts, and synchronization of newly added tables is performed through configuration. Full synchronization, incremental synchronization, and synchronization based on specific rules are supported.
[0018] The system categorizes the data and processes it according to its type. The counter data is divided into parameter data and transaction data, and each type of data is processed separately.
[0019] During the design phase, data is categorized based on its attributes. Data that is not modified during system operation or is modified by the administrator using tools is classified as parameter data. Parameter data is further divided into system parameters and external system parameters based on its source. Data that generates records of system operation status during system operation and is not subsequently modified is classified as flow data.
[0020] Preferably, in step S2:
[0021] The counter service client is configured with two server lists: Server List A and Server List B. One list is designated as the primary server list, and the other as the backup server list, based on the client's region of origin. The counter service client communicates with the counter service server via a persistent TCP connection. Each time the client starts, it randomly selects a server from the primary server list to connect to for transactions. Unless the client restarts, it will continue to use this connection. The client retains connection information; if it disconnects and reconnects, it will still connect to the same server. If all servers in the primary server list become unreachable, the client will automatically select a server from the backup server list to connect to.
[0022] Preferably, the parameters are configured by the management console connected to the server cluster in data center A and synchronized to data center B. The two clusters synchronize data from the outside respectively. The transaction data is recorded independently by each cluster and summarized every night.
[0023] A dual-active deployment system for bank counter systems provided by the present invention includes:
[0024] Module M1: Deploys the counter system server in two clusters;
[0025] Module M2: Configure two server lists in the counter system client, and communicate between the counter system client and the counter system server via a TCP long connection;
[0026] Module M3: When all counter system servers in the main server list cannot be connected, the counter system client will automatically select a counter system server in the backup service list to connect to.
[0027] Preferably, in module M1:
[0028] The counter service system server is deployed independently in two different data centers, each supporting all industry-wide services. Daily, the branch counters connect to the different data centers according to a preset strategy. When a data center becomes unavailable, the branch counters automatically switch to the available data center.
[0029] The counter system server is divided into two clusters and deployed in data centers A and B respectively. The counter terminals connect to either A or B depending on their region.
[0030] Preferably, the two clusters of the counter system have independent databases;
[0031] Depending on the implementation method, data synchronization solutions include:
[0032] Real-time synchronization is achieved by providing external interfaces for data synchronization; two main interfaces for querying and adding, deleting, and modifying data are developed, and corresponding sub-implementation classes are developed for the addition, deletion, and modification of corresponding tables, and data synchronization is performed by calling remote centers, dual centers, and designated centers;
[0033] Non-real-time synchronization; synchronization is achieved by exporting and importing data via scripts, and synchronization of newly added tables is performed through configuration. Full synchronization, incremental synchronization, and synchronization based on specific rules are supported.
[0034] The system categorizes the data and processes it according to its type. The counter data is divided into parameter data and transaction data, and each type of data is processed separately.
[0035] During the design phase, data is categorized based on its attributes. Data that is not modified during system operation or is modified by the administrator using tools is classified as parameter data. Parameter data is further divided into system parameters and external system parameters based on its source. Data that generates records of the system's operational status during runtime and is not subsequently modified is classified as flow data.
[0036] Preferably, in module M2:
[0037] The counter service client is configured with two server lists: Server List A and Server List B. One list is designated as the primary server list, and the other as the backup server list, based on the client's region of origin. The counter service client communicates with the counter service server via a persistent TCP connection. Each time the client starts, it randomly selects a server from the primary server list to connect to for transactions. Unless the client restarts, it will continue to use this connection. The client retains connection information; if it disconnects and reconnects, it will still connect to the same server. If all servers in the primary server list become unreachable, the client will automatically select a server from the backup server list to connect to.
[0038] Preferably, the parameters are configured by the management console connected to the server cluster in data center A and synchronized to data center B. The two clusters synchronize data from the outside respectively. The transaction data is recorded independently by each cluster and summarized every night.
[0039] Compared with the prior art, the present invention has the following beneficial effects:
[0040] 1. When a computer room is unable to provide services due to some unforeseen event, the branch counter can automatically and seamlessly switch to a normal computer room, thereby ensuring business continuity.
[0041] 2. Normally, both centers can provide external services simultaneously, making full use of existing server resources;
[0042] 3. This invention does not require dedicated data synchronization software or hardware, thus requiring less investment.
[0043] 4. Compared with conventional disaster recovery solutions, the biggest features of this invention are its lightweight nature, low cost, and low risk. Based on the characteristics of the counter system, the designers achieve quick and easy seamless switching between active and passive modes through application layer logic judgment, so as to realize the continuous and stable operation of the business system and meet the requirements of regulatory business continuity. Attached Figure Description
[0044] Other features, objects, and advantages of the present invention will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:
[0045] Figure 1 This is a schematic diagram of the cluster deployment of the counter system. Detailed Implementation
[0046] The present invention will now be described in detail with reference to specific embodiments. These embodiments will help those skilled in the art to further understand the present invention, but do not limit the invention in any way. It should be noted that those skilled in the art can make several changes and improvements without departing from the concept of the present invention. These all fall within the protection scope of the present invention.
[0047] Example 1;
[0048] According to the present invention, a dual-active deployment method for a bank counter system is provided, such as... Figure 1 As shown, it includes:
[0049] Step S1: The counter system server is deployed in two clusters;
[0050] Specifically, in step S1:
[0051] The counter service system server is deployed independently in two different data centers, each supporting all industry-wide services. Daily, the branch counters connect to the different data centers according to a preset strategy. When a data center becomes unavailable, the branch counters automatically switch to the available data center.
[0052] The counter system server is divided into two clusters and deployed in data centers A and B respectively. The counter terminals connect to either A or B depending on their region.
[0053] Specifically, the two clusters of the counter system have independent databases;
[0054] Depending on the implementation method, data synchronization solutions include:
[0055] Real-time synchronization is achieved by providing external interfaces for data synchronization; two main interfaces for querying and adding, deleting, and modifying data are developed, and corresponding sub-implementation classes are developed for the addition, deletion, and modification of corresponding tables, and data synchronization is performed by calling remote centers, dual centers, and designated centers;
[0056] Non-real-time synchronization; synchronization is achieved by exporting and importing data via scripts, and synchronization of newly added tables is performed through configuration. Full synchronization, incremental synchronization, and synchronization based on specific rules are supported.
[0057] The system categorizes the data and processes it according to its type. The counter data is divided into parameter data and transaction data, and each type of data is processed separately.
[0058] During the design phase, data is categorized based on its attributes. Data that is not modified during system operation or is modified by the administrator using tools is classified as parameter data. Parameter data is further divided into system parameters and external system parameters based on its source. Data that generates records of system operation status during system operation and is not subsequently modified is classified as flow data.
[0059] Step S2: Configure two server lists on the counter system client, and communicate between the counter system client and the counter system server via a TCP long connection;
[0060] Specifically, in step S2:
[0061] The counter service client is configured with two server lists: Server List A and Server List B. One list is designated as the primary server list, and the other as the backup server list, based on the client's region of origin. The counter service client communicates with the counter service server via a persistent TCP connection. Each time the client starts, it randomly selects a server from the primary server list to connect to for transactions. Unless the client restarts, it will continue to use this connection. The client retains connection information; if it disconnects and reconnects, it will still connect to the same server. If all servers in the primary server list become unreachable, the client will automatically select a server from the backup server list to connect to.
[0062] Step S3: When all counter system servers in the main server list cannot be connected, the counter system client will automatically select a counter system server in the backup service list to connect to.
[0063] Specifically, the parameters are configured by the management console and connected to the server cluster in data center A, and synchronized to data center B. The two clusters synchronize data from the outside. The transaction data is recorded independently by each cluster and summarized every night.
[0064] Example 2:
[0065] Example 2 is a preferred embodiment of Example 1, and is used to illustrate the present invention in more detail.
[0066] The present invention also provides a dual-active deployment system for a bank counter system. The dual-active deployment system for a bank counter system can be implemented by executing the process steps of the dual-active deployment method for a bank counter system. That is, those skilled in the art can understand the dual-active deployment method for a bank counter system as a preferred embodiment of the dual-active deployment system for a bank counter system.
[0067] A dual-active deployment system for bank counter systems provided by the present invention includes:
[0068] Module M1: The counter system server is deployed in two clusters;
[0069] Specifically, in module M1:
[0070] The counter service system server is deployed independently in two different data centers, each supporting all industry-wide services. Daily, the branch counters connect to the different data centers according to a preset strategy. When a data center becomes unavailable, the branch counters automatically switch to the available data center.
[0071] The counter system server is divided into two clusters and deployed in data centers A and B respectively. The counter terminals connect to either A or B depending on their region.
[0072] Specifically, the two clusters of the counter system have independent databases;
[0073] Depending on the implementation method, data synchronization solutions include:
[0074] Real-time synchronization is achieved by providing external interfaces for data synchronization; two main interfaces for querying and adding, deleting, and modifying data are developed, and corresponding sub-implementation classes are developed for the addition, deletion, and modification of corresponding tables, and data synchronization is performed by calling remote centers, dual centers, and designated centers;
[0075] Non-real-time synchronization; synchronization is achieved by exporting and importing data via scripts, and synchronization of newly added tables is performed through configuration. Full synchronization, incremental synchronization, and synchronization based on specific rules are supported.
[0076] The system categorizes the data and processes it according to its type. The counter data is divided into parameter data and transaction data, and each type of data is processed separately.
[0077] During the design phase, data is categorized based on its attributes. Data that is not modified during system operation or is modified by the administrator using tools is classified as parameter data. Parameter data is further divided into system parameters and external system parameters based on its source. Data that generates records of the system's operational status during runtime and is not subsequently modified is classified as flow data.
[0078] Module M2: The counter system client is configured with two server lists, and the counter system client and the counter system server communicate via a TCP long connection;
[0079] Specifically, in module M2:
[0080] The counter service client is configured with two server lists: Server List A and Server List B. One list is designated as the primary server list, and the other as the backup server list, based on the client's region of origin. The counter service client communicates with the counter service server via a persistent TCP connection. Each time the client starts, it randomly selects a server from the primary server list to connect to for transactions. Unless the client restarts, it will continue to use this connection. The client retains connection information; if it disconnects and reconnects, it will still connect to the same server. If all servers in the primary server list become unreachable, the client will automatically select a server from the backup server list to connect to.
[0081] Module M3: When all counter system servers in the main server list cannot be connected, the counter system client will automatically select a counter system server in the backup service list to connect to.
[0082] Specifically, the parameters are configured by the management console and connected to the server cluster in data center A, and synchronized to data center B. The two clusters synchronize data from the outside. The transaction data is recorded independently by each cluster and summarized every night.
[0083] Example 3:
[0084] Example 3 is a preferred example of Example 1, and is used to illustrate the present invention in more detail.
[0085] The counter service system is the main support system for bank branches to provide services, and its stable operation affects whether the bank branches can provide services normally. This invention designs a dual-active deployment mode for the counter service system, in which the counter service system server is deployed independently in two different data centers. Each data center can support all business operations in the industry, and the branch counters connect to the different data centers according to certain strategies.
[0086] a) The counter service system server is divided into two clusters and deployed in the Fuzhou Center and Shanghai Center respectively.
[0087] b) Configure two server lists for the counter system client: Fuzhou central server list and Shanghai central server list, and configure one as the primary server list and the other as the backup server list.
[0088] c) The counter system client and the counter system server communicate via a persistent TCP connection. Each time the counter system client starts, it randomly selects a server from the main server list to connect to for transactions. As long as the counter system client does not restart, it will continue to use this connection for interaction. The counter system client retains connection information; if the counter system client disconnects and reconnects within the same day, it will also connect to the same counter system server.
[0089] d) If all counter system servers in the main server list cannot be connected, the counter system client will automatically select a counter system server in the backup service list to connect to.
[0090] e) The counter service system client has two versions. One version has the Fuzhou center as the main server list, and the other version has the second running red heart as the main server list. When going online, different branches will choose different versions of the counter service system client according to the plan.
[0091] The counter service system server is deployed independently in two different data centers, each capable of supporting all industry-wide services. Daily operations involve the branch counters connecting to the different data centers according to a specific strategy. If a data center becomes unavailable due to unforeseen circumstances, the branch counters can automatically switch to the available data center, ensuring business continuity. Deployment diagram shown below. Figure 1 :
[0092] The counter service system server is deployed in two clusters in data centers in Fuzhou and Shanghai respectively. Counter terminals connect to either Fuzhou or Shanghai based on their region of origin. The counter service system client is configured with two server lists: a Fuzhou server list and a Shanghai server list, with one designated as the primary server list and the other as the backup server list based on the region of origin. The counter service system client and server communicate via a persistent TCP connection. Each time the counter service system client starts, it randomly selects a server from the primary server list to connect to for transactions. This connection is maintained as long as the client does not restart. The client retains connection information; if it disconnects and reconnects within the same day, it will reconnect to the same server. If all servers in the primary server list are unreachable, the client automatically selects a server from the backup server list to connect to.
[0093] The counter system's two clusters each have independent databases, raising data synchronization issues. Based on the system's characteristics, a series of strategies were designed to address this. Data synchronization can be implemented in two ways: real-time synchronization, using an external interface. This involves developing unified main interfaces for querying and adding / deleting data, with corresponding sub-implementation classes for each table's add / delete / modify operations. This supports data synchronization via calls to remote data centers, dual data centers, and designated data centers, facilitating rapid application development and iteration. Non-real-time synchronization is performed at the end of the day via script-based data export and import. This supports synchronization of newly added tables through configuration, and supports full synchronization, incremental synchronization, and synchronization based on specific rules.
[0094] In addition, the system categorizes the data and processes it separately according to the different data types. The counter data is divided into two categories: 1) parameter data and 2) transaction data, and the different data types are processed separately.
[0095] The counter system generates a large amount of data, which system designers categorize during the design phase based on attributes such as purpose, source, and maintenance method. Data that is not modified during system operation or is modified by the administrator using tools is classified as parameter data. Parameter data is further divided into two categories based on its source: 1) parameters of this system, and 2) parameters of external systems. Data that generates records of the system's operating status during system operation and is not subsequently modified is classified as flow data.
[0096] The system parameters are configured via the management console connecting to the server cluster in the Fuzhou data center, and then synchronized (real-time / non-real-time) to the Shanghai data center. External system parameters are synchronized from external sources by both clusters. Transaction data is recorded independently by each cluster and then aggregated every evening.
[0097] By classifying data, different data synchronization schemes can be adopted for different data based on their characteristics, thereby reducing data synchronization costs and improving data synchronization efficiency.
[0098] Those skilled in the art will understand that, in addition to implementing the system, apparatus, and their modules provided by this invention in purely computer-readable program code, the same program can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, the system, apparatus, and their modules provided by this invention can be considered a hardware component, and the modules included therein for implementing various programs can also be considered structures within the hardware component; alternatively, modules for implementing various functions can be considered both software programs implementing the method and structures within the hardware component.
[0099] Specific embodiments of the present invention have been described above. It should be understood that the present invention is not limited to the specific embodiments described above, and those skilled in the art can make various changes or modifications within the scope of the claims, which do not affect the essence of the present invention. Unless otherwise specified, the embodiments and features described in this application can be arbitrarily combined with each other.
Claims
1. A method for dual-active deployment of a bank counter system, characterized in that, include: Step S1: Deploy the counter system server in two clusters; Step S2: Configure two server lists in the counter system client, and communicate between the counter system client and the counter system server via a TCP long connection; Step S3: When all counter system servers in the main server list cannot be connected, the counter system client will automatically select a counter system server in the backup service list to connect to. In step S1: The counter service system server is deployed independently in two different data centers, each supporting all industry-wide services. Daily, the branch counters connect to the different data centers according to a preset strategy. When a data center becomes unavailable, the branch counters automatically switch to the available data center. The counter system server is divided into two clusters and deployed in data centers A and B respectively. The counter terminals connect to either A or B depending on their region. The counter system has two clusters with independent databases; Depending on the implementation method, data synchronization solutions include: Real-time synchronization is achieved by providing external interfaces for data synchronization; two main interfaces for querying and adding, deleting, and modifying data are developed, and corresponding sub-implementation classes are developed for the addition, deletion, and modification of corresponding tables, and data synchronization is performed by calling remote centers, dual centers, and designated centers; Non-real-time synchronization; synchronization is achieved by exporting and importing data via scripts, and synchronization of newly added tables is performed through configuration. Full synchronization, incremental synchronization, and synchronization based on specific rules are supported. The system categorizes the data and processes it according to its type. The counter data is divided into parameter data and transaction data, and each type of data is processed separately. During the design phase, data is categorized based on its attributes. Data that is not modified during system operation or is modified by the administrator using tools is classified as parameter data. Parameter data is further divided into system parameters and external system parameters based on its source. Data that generates records of system operation status during system operation and is not subsequently modified is classified as flow data. The parameters are configured by the management console and connected to the server cluster in data center A, and synchronized to data center B. The two clusters synchronize data from the outside. The transaction data is recorded independently by each cluster and summarized every night.
2. The method for dual-active deployment of a bank counter system according to claim 1, characterized in that, In step S2: The counter system client is configured with two server lists: Server A and Server B, and one of them is configured as the primary server list and the other as the backup server list according to the region of origin. The counter system client and the counter system server communicate via a long TCP connection. Each time the counter system client starts, it randomly selects a connection from the main server list to connect to the counter system server for transactions. The counter system client will continue to use this connection for interaction unless it is restarted. The counter system client retains connection information. If the counter system client disconnects and reconnects, it will still connect to the counter system server. If all counter system servers in the main server list are unreachable, the counter system client will automatically select a counter system server from the backup server list to connect to.
3. A dual-active deployment system for bank counter systems, characterized in that, include: Module M1: Deploys the counter system server in two clusters; Module M2: Configure two server lists in the counter system client, and communicate between the counter system client and the counter system server via a TCP long connection; Module M3: When all counter system servers in the main server list cannot be connected, the counter system client will automatically select a counter system server in the backup service list to connect to; In module M1: The counter service system server is deployed independently in two different data centers, each supporting all industry-wide services. Daily, the branch counters connect to the different data centers according to a preset strategy. When a data center becomes unavailable, the branch counters automatically switch to the available data center. The counter system server is divided into two clusters and deployed in data centers A and B respectively. The counter terminals connect to either A or B depending on their region. The counter system has two clusters with independent databases; Depending on the implementation method, data synchronization solutions include: Real-time synchronization is achieved by providing external interfaces for data synchronization; two main interfaces for querying and adding, deleting, and modifying data are developed, and corresponding sub-implementation classes are developed for the addition, deletion, and modification of corresponding tables, and data synchronization is performed by calling remote centers, dual centers, and designated centers; Non-real-time synchronization; synchronization is achieved by exporting and importing data via scripts, and synchronization of newly added tables is performed through configuration. Full synchronization, incremental synchronization, and synchronization based on specific rules are supported. The system categorizes the data and processes it according to its type. The counter data is divided into parameter data and transaction data, and each type of data is processed separately. During the design phase, data is categorized based on its attributes. Data that is not modified during system operation or is modified by the administrator using tools is classified as parameter data. Parameter data is further divided into system parameters and external system parameters based on its source. Data that generates records of system operation status during system operation and is not subsequently modified is classified as flow data. The parameters are configured by the management console and connected to the server cluster in data center A, and synchronized to data center B. The two clusters synchronize data from the outside. The transaction data is recorded independently by each cluster and summarized every night.
4. The bank counter system with active-active deployment according to claim 3, characterized in that, In module M2: The counter system client is configured with two server lists: Server A and Server B, and one of them is configured as the primary server list and the other as the backup server list according to the region of origin. The counter system client and the counter system server communicate via a long TCP connection. Each time the counter system client starts, it randomly selects a connection from the main server list to connect to the counter system server for transactions. The counter system client will continue to use this connection for interaction unless it is restarted. The counter system client retains connection information. If the counter system client disconnects and reconnects, it will still connect to the counter system server. If all counter system servers in the main server list are unreachable, the counter system client will automatically select a counter system server from the backup server list to connect to.