Controller switching warning method, device, electronic device and readable storage medium

By obtaining front-end and back-end business models and pressures, fitting the controller switching time and delay, simulating the switching in abnormal scenarios and issuing early warnings, the problem of controller switching affecting front-end services is solved, and the availability of the entire machine system and data transmission reliability are improved.

CN115757056BActive Publication Date: 2025-08-29INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211297948.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-21
Publication Date
2025-08-29
Estimated Expiration
2042-10-21

AI Technical Summary

Technical Problem

In dual-control array storage, the controller's switching process in abnormal scenarios is likely to affect the normal issuance of front-end services, resulting in service interruption and affecting the availability of the entire machine system.

Method used

By obtaining the front-end business model, front-end business pressure and back-end business pressure, using the preset embedded database fitting controller to switch the optimization time and the normal switching instant input and output delay, simulate the controller's switching in abnormal scenarios, and issue a switching warning when the front-end business pressure is less than the preset value.

Benefits of technology

Ensure that front-end services can be issued normally when the controller switches, improve the availability of the entire machine system, and avoid unnecessary controller switching through switching warnings, ensuring the reliability of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115757056B_ABST
    Figure CN115757056B_ABST
Patent Text Reader

Abstract

The embodiment of the present invention provides a controller switching warning method, device, electronic device and readable storage medium, the method comprising: obtaining a front-end business model, front-end business pressure and back-end business pressure; fitting the controller switching optimization time and the normal switching instantaneous input and output delay according to a preset embedded database, the front-end business model, the front-end business pressure and the back-end business pressure; when the front-end business pressure is less than a preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a simulation test result; issuing a switching warning for the controller according to the preset value, the simulation test result, the controller switching optimization time and the normal switching instantaneous input and output delay. The above method allows the front-end business to always be able to send business normally when the controller switches, ensuring the reliability of data transmission and thereby improving the availability of the entire system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to the field of terminal technology, and in particular to a controller switching warning method, a controller switching warning device, an electronic device, and a computer-readable storage medium. Background Art

[0002] In most storage controller systems, dual controllers are used to improve data transmission reliability and prevent data loss due to storage controller failure during data input. Currently, dual-controller storage arrays, especially high-end multi-controller storage arrays, typically use multiple controllers to provide services to front-end hosts in parallel. Therefore, it is crucial that controllers can smoothly switch without disrupting front-end services in abnormal scenarios (such as failures or plug-in / plug-out).

[0003] However, whether the controller can switch smoothly is generally limited by multiple factors such as front-end business pressure and storage resource usage. Currently, there is no separate module for unified management, which can easily cause the front-end controller to affect the normal delivery of front-end business during switching in abnormal scenarios, and even cause business interruption, thereby affecting the availability of the entire system. Summary of the Invention

[0004] An embodiment of the present invention provides a controller switching warning method, device, electronic device and computer-readable storage medium to solve or partially solve the problem that the controller cannot switch smoothly during the switching process of abnormal scenarios, thereby affecting the normal delivery of front-end services and even causing service interruption.

[0005] An embodiment of the present invention discloses a controller switching early warning method, which is applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch, and the storage controller system is provided with multiple controllers, each of which is used to provide business services for the front-end host. The method includes:

[0006] Obtain the front-end business model, front-end business pressure, and back-end business pressure;

[0007] Fitting the controller switching optimization time and normal switching instantaneous input and output delay according to a preset embedded database, the front-end business model, the front-end business pressure, and the back-end business pressure;

[0008] When the front-end business pressure is less than a preset pressure value, simulating the controller to switch under an abnormal scenario and obtaining a simulation test result;

[0009] According to the preset value, the simulation test result, the controller switching optimization time and the normal switching instantaneous input and output delay, the controller switching warning is issued.

[0010] Optionally, the storage controller system is configured with multiple system modes. When the front-end service pressure is less than a preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a simulation test result includes:

[0011] confirming a current system mode of the storage controller system;

[0012] Confirming the preset periodic time and preset pressure value corresponding to the current system mode;

[0013] Within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and a simulation test result is obtained.

[0014] Optionally, the current system mode includes a first system mode and a second system mode, the preset periodic time includes a first preset periodic time and a second preset periodic time, and the preset pressure value includes a first preset pressure value and a second preset pressure value. Within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a simulation test result includes:

[0015] Within the first preset periodic time corresponding to the first system mode, if the front-end business pressure is less than the first preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a first simulation test result;

[0016] During the second preset periodic time corresponding to the second system mode, if the front-end business pressure is less than the second preset pressure value, the controller is simulated to switch under an abnormal scenario and a second simulation test result is obtained.

[0017] Optionally, the preset periodic time further includes a third preset periodic time, and the preset pressure value further includes a third preset pressure value. If the front-end business pressure is less than the second preset pressure value within the second preset periodic time corresponding to the second system mode, then after simulating the controller switching in an abnormal scenario and obtaining a second simulation test result, the method further includes:

[0018] Within the third preset periodic time corresponding to the second system mode, if the front-end business pressure is less than the third preset pressure value, the controller is simulated to switch under an abnormal scenario and a third simulation test result is obtained.

[0019] Optionally, the preset value includes a preset controller switching time multiple and a preset switching instant input and output delay multiple, the preset controller switching time multiple includes a first preset controller switching time multiple and a second preset controller switching time multiple, and the preset switching instant input and output delay multiple includes a first preset switching instant input and output delay multiple and a second preset switching instant input and output delay multiple.

[0020] Optionally, issuing a switching warning of the controller according to a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment includes:

[0021] When the current system mode is the first system mode, obtaining a first controller switching time and a first switching instantaneous input-output delay from a first simulation test result;

[0022] If the first controller switching time is greater than the product of the controller switching optimization time and the first preset controller switching time multiple, or if the first switching instantaneous input and output delay is greater than the product of the normal switching instantaneous input and output delay and the first preset switching instantaneous input and output delay multiple, a first-level switching warning of the controller is issued, and a prompt is given as to whether it is necessary to switch to the second system mode.

[0023] Optionally, issuing a switching warning of the controller according to a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment includes:

[0024] When the current system mode is the second system mode, obtaining a second controller switching time and a second switching instantaneous input-output delay from a second simulation test result;

[0025] If the switching time of the second controller is greater than the product of the controller switching optimization time and the second preset controller switching time multiple, or if the input and output delay at the second switching moment is greater than the product of the input and output delay at the normal switching moment and the second preset switching moment input and output delay multiple, then a secondary switching warning of the controller is issued, and the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn.

[0026] Optionally, after sequentially adjusting the number of input and output queues in the front-end service module, the switching module, and the storage front-end module controlled by the storage controller system, the method further includes:

[0027] When the current system mode is the second system mode, obtaining a third controller switching time and a third switching instantaneous input-output delay from a third simulation test result;

[0028] If the third controller switching time is less than or equal to the product of the controller switching optimization time and the second preset controller switching time multiple, and the third switching instantaneous input and output delay is less than or equal to the product of the normal switching instantaneous input and output delay and the second preset switching instantaneous input and output delay multiple, then the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn, and the secondary switching warning of the controller is canceled at the same time.

[0029] An embodiment of the present invention further discloses a controller switching warning device, which is applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch, and the storage controller system is provided with multiple controllers, each of which is used to provide business services for the front-end host. The device includes:

[0030] Data acquisition module, used to obtain front-end business model, front-end business pressure and back-end business pressure;

[0031] A data fitting module, configured to fit the controller switching optimization time and the normal switching instantaneous input and output delay according to a preset embedded database, the front-end business model, the front-end business pressure, and the back-end business pressure;

[0032] A simulation switching module, configured to simulate the controller switching in an abnormal scenario and obtain a simulation test result when the front-end service pressure is less than a preset pressure value;

[0033] The warning module is used to issue a switching warning of the controller according to a preset value, the simulation test result, the controller switching optimization time and the input and output delay at the normal switching moment.

[0034] Optionally, the storage controller system is configured with multiple system modes, and the analog switching module is specifically configured to:

[0035] confirming a current system mode of the storage controller system;

[0036] Confirming the preset periodic time and preset pressure value corresponding to the current system mode;

[0037] Within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and a simulation test result is obtained.

[0038] Optionally, the warning issuance module is specifically configured to:

[0039] When the current system mode is the first system mode, obtaining a first controller switching time and a first switching instantaneous input-output delay from a first simulation test result;

[0040] If the first controller switching time is greater than the product of the controller switching optimization time and the first preset controller switching time multiple, or if the first switching instantaneous input and output delay is greater than the product of the normal switching instantaneous input and output delay and the first preset switching instantaneous input and output delay multiple, a first-level switching warning of the controller is issued, and a prompt is given as to whether it is necessary to switch to the second system mode.

[0041] Optionally, the warning issuance module is specifically configured to:

[0042] When the current system mode is the second system mode, obtaining a second controller switching time and a second switching instantaneous input-output delay from a second simulation test result;

[0043] If the switching time of the second controller is greater than the product of the controller switching optimization time and the second preset controller switching time multiple, or if the input and output delay at the second switching moment is greater than the product of the input and output delay at the normal switching moment and the second preset switching moment input and output delay multiple, then a secondary switching warning of the controller is issued, and the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn.

[0044] An embodiment of the present invention further discloses an electronic device, comprising a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus;

[0045] The memory is used to store computer programs;

[0046] The processor is configured to implement the method described in the embodiment of the present invention when executing the program stored in the memory.

[0047] An embodiment of the present invention further discloses a computer-readable storage medium having instructions stored thereon. When executed by one or more processors, the processors are enabled to execute the method according to the embodiment of the present invention.

[0048] The embodiments of the present invention include the following advantages:

[0049] In an embodiment of the present invention, the present invention is applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch, and the storage controller system is provided with multiple controllers, which are used to provide business services for the front-end host. By obtaining the front-end business model, the front-end business pressure and the back-end business pressure, the controller switching optimization time and the normal switching instant input and output delay are fitted according to the preset embedded database, the front-end business model, the front-end business pressure and the back-end business pressure. When the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and obtain a simulation test result. Finally, according to the preset value, the simulation test result, the controller switching optimization time and the normal switching instant input and output delay, a controller switching warning is issued. The present invention performs data fitting for different front-end business models and front-end and back-end load pressures, and then optimizes the controller switching, so that the front-end business can always be normally issued when the controller switches, ensuring the reliability of data transmission and thereby improving the availability of the entire system. At the same time, according to the issued controller switching warning, the controller switching can be avoided in the case of a warning, effectively providing a warning for the controller switching. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] Figure 1 This is a flowchart of the steps of a controller switching warning method provided in an embodiment of the present invention;

[0051] Figure 2 This is a functional topology diagram of a controller switching warning provided in an embodiment of the present invention;

[0052] Figure 3 This is a structural block diagram of a controller switching warning device provided in an embodiment of the present invention;

[0053] Figure 4 It is a schematic diagram of the hardware structure of an electronic device for implementing various embodiments of the present invention. DETAILED DESCRIPTION

[0054] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0055] In order to enable those skilled in the art to better understand the technical solutions of the embodiments of the present invention, some technical features involved in the embodiments of the present invention are explained and illustrated below:

[0056] Controller Switching Optimization (CSO) Management Module: This module resides on the motherboard and is primarily used with programmable logic devices, such as ARM (Advanced RISC Machines) processors. This module dynamically manages the front-end service module, switching module, storage front-end module, and controller module in both high-availability and normal modes.

[0057] Front-end business module: usually located on the business-side host, commonly including FC (Fibre Channel) cards, network cards, IB (Information Button) cards and other IO (Input Output) interface cards on the server.

[0058] Switching module: usually a fiber optic switch, Ethernet switch or IB switch.

[0059] Storage front-end module: generally located on the storage side, common examples include FC cards, network cards, IB cards and other IO interface cards.

[0060] Controller module: This module is the control module of the array storage, carries the storage controller system software, and is managed by the controller switching optimization management module. It sends the current business load data to the controller switching optimization management module in real time.

[0061] Indication module: This module is located on the board and is directly controlled by the serial port module. It indicates the real-time status of the current controller switching optimization management module.

[0062] Wireless module: It can convert the serial port module signal into wireless signals such as WIFI (WIreless-FIdelity, wireless connection). The outside world can exchange information with the controller switching optimization management module without the need for a physical serial port line.

[0063] Serial port module: The serial port module can be used to exchange information between the outside world and the controller switching optimization management module, as well as to preset parameters and enable related functions.

[0064] As an example, in most storage controller systems, in order to improve the reliability of data transmission and prevent data loss due to storage controller failure during data input, dual controllers can be used. At present, in current dual-controller array storage, especially high-end multi-controller array storage, multiple controllers are generally used to provide business services to the front-end host in parallel. Therefore, it is particularly important whether the controller can switch smoothly in abnormal scenarios (such as failure, plugging and unplugging, etc.) without affecting the front-end business. However, whether the controller can switch smoothly is generally limited by multiple factors such as the pressure of the front-end business and the use of storage resources itself. There is currently no separate module for unified management, which can easily cause the front-end controller to affect the normal delivery of the front-end business during the switching process in abnormal scenarios, and even cause business interruption, thereby affecting the availability of the entire system.

[0065] In this regard, one of the core inventions of the present invention is to apply it to a storage controller system, wherein the storage controller system is connected to a front-end host through a switch, and the storage controller system is provided with multiple controllers, which are used to provide business services for the front-end host. By obtaining the front-end business model, the front-end business pressure and the back-end business pressure, the controller switching optimization time and the normal switching instant input and output delay are fitted according to the preset embedded database, the front-end business model, the front-end business pressure and the back-end business pressure. When the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under abnormal scenarios and obtain simulation test results. Finally, according to the preset value, the simulation test results, the controller switching optimization time and the normal switching instant input and output delay, a controller switching warning is issued. The present invention performs data fitting on different front-end business models and front-end and back-end load pressures, and then optimizes the controller switching, so that the front-end business can always be normally issued when the controller switches, ensuring the reliability of data transmission and thus improving the availability of the entire system. At the same time, according to the issued controller switching warning, the controller switching can be avoided in the case of a warning, effectively providing a warning for the controller switching.

[0066] Specifically, refer to Figure 1 , shows a flowchart of the steps of a controller switching warning method provided in an embodiment of the present invention, which is applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch. The storage controller system is provided with multiple controllers, and the controllers are used to provide business services for the front-end host. Specifically, the method may include the following steps:

[0067] Step 101: Obtain a front-end business model, front-end business pressure, and back-end business pressure;

[0068] For the front-end business model, it is a data model issued by the current business end obtained by the information interaction between the controller switching optimization management module and the front-end business module, the switching module and the storage front-end module. The front-end business model can at least include a data block; for the data block, it is a group of records arranged sequentially or randomly, and is a data unit transmitted between the main memory and the input (read), output (write) device or external memory. The size of the data block is affected by many factors, including input and output efficiency, storage space and computer application characteristics.

[0069] For front-end business pressure, the method of obtaining it is the same as that of the front-end business model. The controller switches and optimizes the information interaction between the management module, front-end business module, switching module and storage front-end module to obtain the business load pressure of the current business end.

[0070] The backend business pressure is the business load pressure of the current storage controller system directly obtained from the controller module by the controller switching optimization management module.

[0071] Reference Figure 2 , shows a functional topology diagram of a controller switching warning provided in an embodiment of the present invention. As can be seen from the figure, the front-end business module is located on the front-end server, which includes a front-end host. The controller switching optimization management module, the storage front-end module and the controller module are located on the storage controller system. The front-end business module can transmit information to the controller switching optimization management module or the storage front-end module on the storage controller system through the switching module. Among them, the controller switching optimization management module can exchange information with the front-end business module, the switching module, the storage front-end module and the controller module. In addition, the front-end business module and the switching module can exchange information, the switching module and the storage front-end module can exchange information, and the storage front-end module can exchange information with the controller module.

[0072] It should be noted that, generally, in low- and mid-end storage controller systems, the storage front-end module and the controller module can be integrated into the controller module, while in mid- to high-end and high-end storage controller systems, the storage front-end module and the controller module are physically separated.

[0073] In the specific implementation, the front-end business model and front-end business pressure are obtained through the front-end business module, and then the front-end business module transmits the obtained front-end business model and front-end business pressure to the storage front-end module through the switching module. At this time, the controller switching optimization management module can obtain the front-end business model and front-end business pressure from the storage front-end module, and the back-end business pressure is obtained by the controller switching optimization management module directly from the controller module to obtain the business load pressure of the current storage controller system. By obtaining the front-end business model, front-end business pressure and back-end business pressure, different data bases can be provided for controller switching optimization.

[0074] It should be noted that in the process of obtaining the front-end business model and the front-end business pressure, since the controller switching optimization management module can interact with the front-end business module, the switching module and the storage front-end module, the switching module can interact with the front-end business module and the storage front-end module respectively. The front-end business module can transfer the acquired front-end business model and the front-end business pressure to the storage front-end module through the switching module. Therefore, for the method of obtaining the front-end business model and the front-end business pressure, it can be obtained directly from the front-end business module by the controller switching optimization management module, or it can be obtained from the switching module by the controller switching optimization management module, or it can be obtained from the storage front-end module by the controller switching optimization management module. The present invention does not impose any restrictions on this.

[0075] Step 102 , fitting the controller switching optimization time and normal switching instantaneous input and output delay according to a preset embedded database, the front-end business model, the front-end business pressure, and the back-end business pressure;

[0076] For the preset embedded database, it can be a resource database that stores data related to controller switching; for the controller switching optimization time, it is the most appropriate controller switching time selected during the controller switching process; for the normal switching instantaneous input and output delay, it can be the time consumed from the controller issuing the input and output instructions to the completion of the input and output business.

[0077] In the specific implementation, the optimal controller switching time and the input and output delay at the normal switching moment can be fitted based on the preset embedded database and the acquired front-end business model, front-end business pressure and back-end business pressure. By fitting reasonable data, a data reference standard can be effectively provided for controller switching.

[0078] Step 103: When the front-end service pressure is less than a preset pressure value, simulate the controller switching in an abnormal scenario and obtain a simulation test result;

[0079] The preset pressure value can be used for comparison with the front-end business pressure; for abnormal scenarios, it can be a system failure or a network cable plugging and unplugging situation, etc., and the present invention does not limit this.

[0080] For the system mode, it is the current system mode of the storage controller system; for the simulation test result, it is the current test result obtained by switching the simulation controller, which may include the current controller switching time and the current switching instant input and output delay.

[0081] In the specific implementation, when the front-end business pressure is less than the preset pressure value, the controller switching optimization management module dynamically manages the front-end business module, switching module, storage front-end module and controller module, and then simulates the controller switching in an abnormal scenario and obtains the simulation test results for the current simulated controller switching.

[0082] Step 104 : issuing a switching warning of the controller according to a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment.

[0083] The preset value may include a preset controller switching time multiple and a preset switching instant input and output delay multiple, wherein the multiple may also be a percentage, which is not limited in the present invention.

[0084] The controller switching warning can be used as a sign to determine whether the controller needs to be switched, and serve as a warning.

[0085] In the specific implementation, based on the preset embedded database and the acquired front-end business model, front-end business pressure and back-end business pressure, the controller switching optimization time and the normal switching instant input and output delay are fitted. When the front-end business pressure is less than the preset pressure value, the controller switching optimization management module dynamically manages the front-end business module, switching module, storage front-end module and controller module, and then simulates the controller switching under abnormal scenarios and obtains the simulation test results for the current simulated controller switching. The current controller switching time and the current switching instant input and output delay can be obtained through the simulation test results. Finally, based on the preset value, the current controller switching time, the current switching instant input and output delay, the controller switching optimization time and the normal switching instant input and output delay, the controller switching warning is issued.

[0086] In an embodiment of the present invention, the present invention is applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch, and the storage controller system is provided with multiple controllers, which are used to provide business services for the front-end host. By obtaining the front-end business model, the front-end business pressure and the back-end business pressure, the controller switching optimization time and the normal switching instant input and output delay are fitted according to the preset embedded database, the front-end business model, the front-end business pressure and the back-end business pressure. When the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and obtain a simulation test result. Finally, according to the preset value, the simulation test result, the controller switching optimization time and the normal switching instant input and output delay, a controller switching warning is issued. The present invention performs data fitting for different front-end business models and front-end and back-end load pressures, and then optimizes the controller switching, so that the front-end business can always be normally issued when the controller switches, ensuring the reliability of data transmission and thereby improving the availability of the entire system. At the same time, according to the issued controller switching warning, the controller switching can be avoided in the case of a warning, effectively providing a warning for the controller switching.

[0087] In an optional embodiment of the present invention, the storage controller system is configured with multiple system modes. Step 103, when the front-end service pressure is less than a preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a simulation test result, includes:

[0088] confirming a current system mode of the storage controller system;

[0089] Confirming the preset periodic time and preset pressure value corresponding to the current system mode;

[0090] Within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and a simulation test result is obtained.

[0091] In the specific implementation, first confirm the current system mode of the storage controller system, then confirm the preset periodic time and preset pressure value corresponding to the current system mode, and then within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, the simulation controller switches under the abnormal scenario and obtains the simulation test results.

[0092] In an optional embodiment of the present invention, the current system mode includes a first system mode and a second system mode, the preset periodic time includes a first preset periodic time and a second preset periodic time, and the preset pressure value includes a first preset pressure value and a second preset pressure value. Within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a simulation test result includes:

[0093] Within the first preset periodic time corresponding to the first system mode, if the front-end business pressure is less than the first preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a first simulation test result;

[0094] During the second preset periodic time corresponding to the second system mode, if the front-end business pressure is less than the second preset pressure value, the controller is simulated to switch under an abnormal scenario and a second simulation test result is obtained.

[0095] The first system mode is the normal mode, while the second system mode is the high availability mode. It should be noted that in the high availability mode, it is easier to trigger the controller switching optimization management module to simulate a controller switching event. Therefore, the preset pressure value set in the high availability mode is lower than the preset pressure value set in the normal mode, that is, the first preset pressure value is greater than the second preset pressure value.

[0096] In a specific implementation, within the first preset periodic time corresponding to the normal mode, if the front-end business pressure is less than the first preset pressure value, the simulation controller switches under the abnormal scenario and obtains the first simulation test result; within the second preset periodic time corresponding to the high availability mode, if the front-end business pressure is less than the second preset pressure value, the simulation controller switches under the abnormal scenario and obtains the second simulation test result.

[0097] As an example, assume that the first preset periodic time is T3, the specific value is set to 168 hours, the second preset periodic time is T6, the specific value is set to 72 hours, the first preset pressure value is 50%, and the second preset pressure value is 40%; in normal mode, and within the periodic time of 168 hours, if the front-end business pressure is less than 50%, the controller switching optimization management module triggers a simulated controller switching event, that is, the simulated controller switches under an abnormal scenario, and obtains a first simulation test result for the simulated switching event; in high availability mode, and within the periodic time of 72 hours, if the front-end business pressure is less than 40%, the controller switching optimization management module triggers a simulated controller switching event, that is, the simulated controller switches under an abnormal scenario, and obtains a second simulation test result for the simulated switching event.

[0098] It should be noted that the preset periodic time and the preset pressure value can be adjusted according to actual needs. For example, the periodic time can be preset to 126 hours, and the pressure value can be preset to 55%. The present invention does not impose any limitation on this.

[0099] In an optional embodiment of the present invention, the preset periodic time further includes a third preset periodic time, and the preset pressure value further includes a third preset pressure value. If the front-end business pressure is less than the second preset pressure value within the second preset periodic time corresponding to the second system mode, then after simulating the controller switching in an abnormal scenario and obtaining a second simulation test result, the method further includes:

[0100] Within the third preset periodic time corresponding to the second system mode, if the front-end business pressure is less than the third preset pressure value, the controller is simulated to switch under an abnormal scenario and a third simulation test result is obtained.

[0101] For the second system mode, it is a high availability mode; for the third preset pressure value, it is a typical trigger threshold for the controller switching optimization event. It should be noted that the third preset pressure value is between the first preset pressure value and the second preset pressure value.

[0102] In a specific implementation, within a third preset periodic time corresponding to the high availability mode, if the front-end business pressure is less than a third preset pressure value, the simulation controller switches under an abnormal scenario and obtains a third simulation test result.

[0103] As an example, assume that the third preset periodic time is T9, the specific value is set to 30 minutes, and the third preset pressure value is 45%; in high availability mode, and within the periodic time of 30 minutes, if the front-end business pressure is less than 45%, the controller switching optimization management module triggers a simulated controller switching optimization event, that is, the simulated controller performs switching optimization under abnormal scenarios, and obtains the third simulation test result for the simulated switching optimization event.

[0104] In an optional embodiment of the present invention, the preset value includes a preset controller switching time multiple and a preset switching instant input and output delay multiple, the preset controller switching time multiple includes a first preset controller switching time multiple and a second preset controller switching time multiple, and the preset switching instant input and output delay multiple includes a first preset switching instant input and output delay multiple and a second preset switching instant input and output delay multiple.

[0105] It should be noted that the preset controller switching time multiplier can also be a percentage of the preset controller switching time; similarly, the preset switching instantaneous input / output delay multiplier can also be a percentage of the preset switching instantaneous input / output delay. For example, the first preset controller switching time multiplier can be set to 1.2 or 120%, and the first preset switching instantaneous input / output delay multiplier can be set to 1.25 or 125%, although this is not a limitation of the present invention.

[0106] In an optional embodiment of the present invention, step 104 of issuing a switching warning of the controller based on a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment includes:

[0107] When the current system mode is the first system mode, obtaining a first controller switching time and a first switching instantaneous input-output delay from a first simulation test result;

[0108] If the first controller switching time is greater than the product of the controller switching optimization time and the first preset controller switching time multiple, or if the first switching instantaneous input and output delay is greater than the product of the normal switching instantaneous input and output delay and the first preset switching instantaneous input and output delay multiple, a first-level switching warning of the controller is issued, and a prompt is given as to whether it is necessary to switch to the second system mode.

[0109] As for the first system mode, it is a normal mode.

[0110] In a specific implementation, when the current system mode is normal mode, the first controller switching time and the first switching instantaneous input-output delay are obtained from the first simulation test result. If the first controller switching time is greater than the product of the controller switching optimization time and the first preset controller switching time multiple, or if the first switching instantaneous input-output delay is greater than the product of the normal switching instantaneous input-output delay and the first preset switching instantaneous input-output delay multiple, a first-level controller switching warning is issued, and a prompt is given as to whether it is necessary to switch to high-availability mode. By simulating controller switching through the controller switching optimization module and issuing a controller switching warning, the risk of controller switching in abnormal scenarios is effectively foreseen, and controller switching can be avoided in the presence of a warning, providing a warning for controller switching.

[0111] As an example, when the current system mode is normal mode, assuming that the controller switching optimization time is T1, the normal switching instant input and output delay is T2, the first controller switching time is T4 and the first switching instant input and output delay is T5, the first preset controller switching time multiplier is 1.2, and the first preset switching instant input and output delay multiplier is 1.25, if the first controller switching time T4 is greater than the product of the controller switching optimization time T1 and the first preset controller switching time multiplier 1.2, that is, T4>T1*1.2, or if the first switching instant input and output delay T5 is greater than the product of the normal switching instant input and output delay T2 and the first preset switching instant input and output delay multiplier 1.25, that is, T5>T2*1.25, then a first-level switching warning of the controller is issued, and a prompt is given as to whether it is necessary to switch to high availability mode.

[0112] In an optional embodiment of the present invention, the step 104 of issuing a switching warning of the controller based on a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment includes:

[0113] When the current system mode is the second system mode, obtaining a second controller switching time and a second switching instantaneous input-output delay from a second simulation test result;

[0114] If the switching time of the second controller is greater than the product of the controller switching optimization time and the second preset controller switching time multiple, or if the input and output delay at the second switching moment is greater than the product of the input and output delay at the normal switching moment and the second preset switching moment input and output delay multiple, then a secondary switching warning of the controller is issued, and the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn.

[0115] As for the second system mode, it is a high availability mode.

[0116] In a specific implementation, when the current system mode is a high-availability mode, the second controller switching time and the second switching instantaneous input-output delay are obtained from the second simulation test result. If the second controller switching time is greater than the product of the controller switching optimization time and the second preset controller switching time multiple, or if the second switching instantaneous input-output delay is greater than the product of the normal switching instantaneous input-output delay and the second preset switching instantaneous input-output delay multiple, a secondary switching warning of the controller is issued, and the controller switching optimization management module sequentially adjusts the number of input-output queues in the front-end business module, switching module, and storage front-end module controlled by the storage controller system. The controller switching optimization management module dynamically manages the front-end business module, switching module, storage front-end module, and controller module, so that the front-end business module can always deliver business normally when the controller switches, thereby improving the availability of the entire system.

[0117] As an example, when the current system mode is high availability mode, assuming that the controller switching optimization time is T1, the normal switching instant input and output delay is T2, the second controller switching time is T7 and the first switching instant input and output delay is T8, the second preset controller switching time multiplier is 1.1, and the second preset switching instant input and output delay multiplier is 1.15, if the second controller switching time T7 is greater than the product of the controller switching optimization time T1 and the second preset controller switching time multiplier 1.1, that is, T7>T1*1.1, or if the second switching instant input and output delay T8 is greater than the product of the normal switching instant input and output delay T2 and the second preset switching instant input and output delay multiplier 1.15, that is, T8>T2*1.15, then a secondary switching warning of the controller is issued, and the controller switching optimization management module adjusts the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system in sequence.

[0118] In an optional embodiment of the present invention, after sequentially adjusting the number of input and output queues in the front-end service module, the switch module, and the storage front-end module controlled by the storage controller system, the further step includes:

[0119] When the current system mode is the second system mode, obtaining a third controller switching time and a third switching instantaneous input-output delay from a third simulation test result;

[0120] If the third controller switching time is less than or equal to the product of the controller switching optimization time and the second preset controller switching time multiple, and the third switching instantaneous input and output delay is less than or equal to the product of the normal switching instantaneous input and output delay and the second preset switching instantaneous input and output delay multiple, then the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn, and the secondary switching warning of the controller is canceled at the same time.

[0121] As for the second system mode, it is a high availability mode.

[0122] In a specific implementation, when the current system mode is high availability mode, the third controller switching time and the third switching instantaneous input and output delay are obtained from the third simulation test results. If the third controller switching time is less than or equal to the product of the controller switching optimization time and the second preset controller switching time multiple, and the third switching instantaneous input and output delay is less than or equal to the product of the normal switching instantaneous input and output delay and the second preset switching instantaneous input and output delay multiple, the controller switching optimization management module sequentially adjusts the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system, and cancels the controller's secondary switching warning at the same time. The controller switching optimization management module dynamically manages the front-end business module, switching module, storage front-end module and controller module, especially in high availability mode, controller switching is performed according to different business models and front-end and back-end load pressures, which plays a role in controller switching optimization. It ensures the optimal controller switching strategy without affecting the reliability of the cluster, so that the front-end business module can always perform business delivery normally when the controller switches, thereby improving the availability of the entire system.

[0123] As an example, when the current system mode is high availability mode, assuming that the controller switching optimization time is T1, the normal switching instant input and output delay is T2, the third controller switching time is T10, the third switching instant input and output delay is T11, the second preset controller switching time multiplier is 1.1, and the second preset switching instant input and output delay multiplier is 1.15, if the third controller switching time T10 is less than or equal to the product of the controller switching optimization time T1 and the second preset controller switching time multiplier 1.1, that is, T10≤T1*1.1, or if the third switching instant input and output delay T11 is less than or equal to the product of the normal switching instant input and output delay T2 and the second preset switching instant input and output delay multiplier 1.15, that is, T11≤T2*1.15, then the controller switching optimization management module adjusts the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system in sequence, and cancels the controller's secondary switching warning at the same time.

[0124] In order to help those skilled in the art better understand the technical solutions of the embodiments of the present invention, an example is given below to illustrate:

[0125] Reference Figure 2 , shows a functional topology diagram of a switching warning of a controller provided in an embodiment of the present invention, which may specifically include:

[0126] The front-end business module is located on the front-end server, which includes a front-end host. The controller switching optimization management module, the storage front-end module and the controller module are located on the storage controller system. The front-end business module can transmit information to the controller switching optimization management module or the storage front-end module on the storage controller system through the switching module. Among them, the controller switching optimization management module can exchange information with the front-end business module, the switching module, the storage front-end module and the controller module. In addition, the front-end business module and the switching module can exchange information, the switching module and the storage front-end module can exchange information, and the storage front-end module can exchange information with the controller module.

[0127] It is worth mentioning that, generally speaking, in low- and mid-end storage controller systems, the storage front-end module and the controller module can be integrated into the controller module, while in mid- to high-end and high-end storage controller systems, the storage front-end module and the controller module are physically separated.

[0128] It should be noted that in the process of obtaining the front-end business model and the front-end business pressure, since the controller switching optimization management module can interact with the front-end business module, the switching module and the storage front-end module, the switching module can interact with the front-end business module and the storage front-end module respectively. The front-end business module can transfer the acquired front-end business model and front-end business pressure to the storage front-end module through the switching module. Therefore, for the method of obtaining the front-end business model and the front-end business pressure, it can be obtained directly from the front-end business module by the controller switching optimization management module, or it can be obtained from the switching module by the controller switching optimization management module, and it can also be obtained from the storage front-end module by the controller switching optimization management module. The present invention does not impose any restrictions on this.

[0129] In addition, the serial port module can exchange information between the outside world and the controller switch optimization management module, preset parameters and enable related functions; the indication module is directly controlled by the serial port module and indicates the real-time status of the current controller switch optimization management module to the outside world; the wireless module can convert the serial port module signal into wireless signals such as WIFI, so that the outside world can exchange information with the controller switch optimization management module without a physical serial port line.

[0130] In an embodiment of the present invention, the present invention is applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch, and the storage controller system is provided with multiple controllers, which are used to provide business services for the front-end host. By obtaining the front-end business model, the front-end business pressure and the back-end business pressure, the controller switching optimization time and the normal switching instant input and output delay are fitted according to the preset embedded database, the front-end business model, the front-end business pressure and the back-end business pressure. When the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and obtain a simulation test result. Finally, according to the preset value, the simulation test result, the controller switching optimization time and the normal switching instant input and output delay, a controller switching warning is issued. The present invention performs data fitting for different front-end business models and front-end and back-end load pressures, and then optimizes the controller switching, so that the front-end business can always be normally issued when the controller switches, ensuring the reliability of data transmission and thereby improving the availability of the entire system. At the same time, according to the issued controller switching warning, the controller switching can be avoided in the case of a warning, effectively providing a warning for the controller switching.

[0131] It should be noted that for the sake of simplicity, the method embodiments are described as a series of actions. However, those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in this specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.

[0132] Reference Figure 3 , shows a structural block diagram of a controller switching warning device provided in an embodiment of the present invention, which is applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch. The storage controller system is provided with multiple controllers, each of which is used to provide business services for the front-end host. Specifically, the controller may include the following modules:

[0133] Data acquisition module 301, used to obtain front-end business model, front-end business pressure and back-end business pressure;

[0134] A data fitting module 302 is configured to fit the controller switching optimization time and the normal switching instantaneous input and output delay according to a preset embedded database, the front-end business model, the front-end business pressure, and the back-end business pressure;

[0135] A simulation switching module 303 is configured to simulate the controller switching in an abnormal scenario and obtain a simulation test result when the front-end service pressure is less than a preset pressure value;

[0136] The warning issuing module 304 issues a switching warning of the controller according to a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment.

[0137] In an optional embodiment, the storage controller system is configured with multiple system modes, and the simulation switching module 303 is specifically configured to:

[0138] confirming a current system mode of the storage controller system;

[0139] Confirming the preset periodic time and preset pressure value corresponding to the current system mode;

[0140] Within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and a simulation test result is obtained.

[0141] In an optional embodiment, the warning issuing module 304 is specifically configured to:

[0142] When the current system mode is the first system mode, obtaining a first controller switching time and a first switching instantaneous input-output delay from a first simulation test result;

[0143] If the first controller switching time is greater than the product of the controller switching optimization time and the first preset controller switching time multiple, or if the first switching instantaneous input and output delay is greater than the product of the normal switching instantaneous input and output delay and the first preset switching instantaneous input and output delay multiple, a first-level switching warning of the controller is issued, and a prompt is given as to whether it is necessary to switch to the second system mode.

[0144] In an optional embodiment, the warning issuing module 304 is specifically configured to:

[0145] When the current system mode is the second system mode, obtaining a second controller switching time and a second switching instantaneous input-output delay from a second simulation test result;

[0146] If the switching time of the second controller is greater than the product of the controller switching optimization time and the second preset controller switching time multiple, or if the input and output delay at the second switching moment is greater than the product of the input and output delay at the normal switching moment and the second preset switching moment input and output delay multiple, then a secondary switching warning of the controller is issued, and the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn.

[0147] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0148] In addition, an embodiment of the present invention also provides an electronic device, including: a processor, a memory, and a computer program stored in the memory and runnable on the processor. When the computer program is executed by the processor, the various processes of the switching warning method embodiment of the above-mentioned controller are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0149] The embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the various processes of the controller switching warning method embodiment described above are implemented, and the same technical effects are achieved. To avoid repetition, the details are not described here. The computer-readable storage medium is, for example, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0150] Figure 4 A schematic diagram of the hardware structure of an electronic device for implementing various embodiments of the present invention.

[0151] The electronic device 400 includes but is not limited to: a radio frequency unit 401, a network module 402, an audio output unit 403, an input unit 404, a sensor 405, a display unit 406, a user input unit 407, an interface unit 408, a memory 409, a processor 410, and a power supply 411. It will be understood by those skilled in the art that Figure 4 The electronic device structure shown in the figure does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown, or may combine certain components or arrange the components differently. In the embodiments of the present invention, the electronic device includes but is not limited to a mobile phone, a tablet computer, a laptop computer, a PDA, an in-vehicle terminal, a wearable device, and a pedometer.

[0152] It should be understood that in this embodiment of the present invention, the RF unit 401 can be used to receive and transmit signals during information transmission or calls. Specifically, it receives downlink data from the base station and transmits it to the processor 410 for processing; in addition, it transmits uplink data to the base station. Typically, the RF unit 401 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low-noise amplifier, a duplexer, and the like. Furthermore, the RF unit 401 can communicate with the network and other devices via a wireless communication system.

[0153] The electronic device provides users with wireless broadband Internet access through the network module 402, such as helping users to send and receive emails, browse web pages, and access streaming media.

[0154] The audio output unit 403 can convert audio data received by the RF unit 401 or the network module 402 or stored in the memory 409 into an audio signal and output it as sound. In addition, the audio output unit 403 can also provide audio output related to a specific function performed by the electronic device 400 (for example, a call signal reception sound, a message reception sound, etc.). The audio output unit 403 includes a speaker, a buzzer, a receiver, etc.

[0155] The input unit 404 is used to receive audio or video signals. The input unit 404 may include a graphics processing unit (GPU) 4041 and a microphone 4042. The graphics processor 4041 processes image data of a still picture or video obtained by an image capture device (such as a camera) in a video capture mode or an image capture mode. The processed image frames can be displayed on the display unit 406. The image frames processed by the graphics processor 4041 can be stored in the memory 409 (or other storage medium) or transmitted via the radio frequency unit 401 or the network module 402. The microphone 4042 can receive sound and process such sound into audio data. The processed audio data can be converted into a format that can be sent to a mobile communication base station via the radio frequency unit 401 in the case of a telephone call mode.

[0156] The electronic device 400 also includes at least one sensor 405, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor includes an ambient light sensor and a proximity sensor, wherein the ambient light sensor can adjust the brightness of the display panel 4061 according to the brightness of the ambient light, and the proximity sensor can turn off the display panel 4061 and / or the backlight when the electronic device 400 is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used to identify the posture of the electronic device (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; the sensor 405 can also include a fingerprint sensor, a pressure sensor, an iris sensor, a molecular sensor, a gyroscope, a barometer, a hygrometer, a thermometer, an infrared sensor, etc., which will not be repeated here.

[0157] The display unit 406 is used to display information input by the user or information provided to the user. The display unit 406 may include a display panel 4061, which may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.

[0158] The user input unit 407 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the electronic device. Specifically, the user input unit 407 includes a touch panel 4071 and other input devices 4072. The touch panel 4071, also known as a touch screen, can collect user touch operations on or near it (such as operations performed by the user using any suitable object or accessory such as a finger, stylus, etc. on or near the touch panel 4071). The touch panel 4071 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch direction and detects the signal caused by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device and converts it into touch point coordinates, which are then sent to the processor 410, which receives and executes the command sent by the processor 410. In addition, the touch panel 4071 can be implemented using various types such as resistive, capacitive, infrared and surface acoustic wave. In addition to the touch panel 4071, the user input unit 407 may also include other input devices 4072. Specifically, other input devices 4072 may include but are not limited to a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which will not be described in detail here.

[0159] Furthermore, the touch panel 4071 may be overlaid on the display panel 4061. When the touch panel 4071 detects a touch operation on or near it, it transmits the information to the processor 410 to determine the type of touch event. Subsequently, the processor 410 provides corresponding visual output on the display panel 4061 according to the type of touch event. Figure 4 In the figure, the touch panel 4071 and the display panel 4061 are two independent components to realize the input and output functions of the electronic device. However, in some embodiments, the touch panel 4071 and the display panel 4061 can be integrated to realize the input and output functions of the electronic device, which is not limited here.

[0160] The interface unit 408 is an interface for connecting external devices to the electronic device 400. For example, the external devices may include a wired or wireless headset port, an external power supply (or battery charger) port, a wired or wireless data port, a memory card port, a port for connecting a device with an identification module, an audio input / output (I / O) port, a video I / O port, a headphone port, etc. The interface unit 408 may be used to receive input (e.g., data information, power, etc.) from the external device and transmit the received input to one or more elements within the electronic device 400, or may be used to transmit data between the electronic device 400 and the external device.

[0161] Memory 409 can be used to store software programs and various data. Memory 409 may primarily include a program storage area and a data storage area. The program storage area may store an operating system and at least one application required for a function (such as a sound playback function or an image playback function); the data storage area may store data generated based on the use of the mobile phone (such as audio data, a phone book, etc.). Furthermore, memory 409 may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device.

[0162] Processor 410 is the control center of the electronic device. It connects all parts of the electronic device using various interfaces and circuits. By running or executing software programs and / or modules stored in memory 409 and accessing data stored in memory 409, it performs various functions of the electronic device and processes data, thereby monitoring the electronic device as a whole. Processor 410 may include one or more processing units; preferably, processor 410 may integrate an application processor and a modem processor, wherein the application processor primarily processes the operating system, user interface, and application programs, while the modem processor primarily handles wireless communications. It is understood that the modem processor may not be integrated into processor 410.

[0163] The electronic device 400 may also include a power supply 411 (such as a battery) to supply power to each component. Preferably, the power supply 411 may be logically connected to the processor 410 through a power management system, thereby enabling the power management system to manage charging, discharging, and power consumption.

[0164] In addition, the electronic device 400 includes some functional modules not shown, which will not be described here.

[0165] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.

[0166] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better embodiment. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present invention.

[0167] The embodiments of the present invention are described above in conjunction with the accompanying drawings, but the present invention is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present invention, ordinary technicians in this field can also make many forms without departing from the scope of protection of the present invention and the claims, all of which are protected by the present invention.

[0168] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed in the embodiments of the present invention can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.

[0169] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0170] In the embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0171] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0172] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0173] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, a mobile hard drive, ROM, RAM, a magnetic disk, or an optical disk.

[0174] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.

Claims

1. A controller switching warning method, characterized in that: Applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch, the storage controller system is provided with multiple controllers, and the controllers are used to provide business services for the front-end host, the method comprising: Acquire a front-end business model, front-end business pressure, and back-end business pressure; wherein the front-end business model is a data model issued by the current business end obtained by information interaction between the controller switching optimization management module and the front-end business module, the switching module, and the storage front-end module, and the front-end business model includes at least a data block; Fitting the controller switching optimization time and normal switching instantaneous input and output delay according to a preset embedded database, the front-end business model, the front-end business pressure, and the back-end business pressure; When the front-end business pressure is less than a preset pressure value, simulating the controller to switch under an abnormal scenario and obtaining a simulation test result; Issuing a switching warning of the controller according to a preset value, the simulation test result, the optimal switching time of the controller, and the input and output delay at the moment of normal switching; Among them, the preset value includes a preset controller switching time multiplier and a preset switching instant input and output delay multiplier, the preset controller switching time multiplier includes a first preset controller switching time multiplier and a second preset controller switching time multiplier, and the preset switching instant input and output delay multiplier includes a first preset switching instant input and output delay multiplier and a second preset switching instant input and output delay multiplier.

2. The method according to claim 1, characterized in that The storage controller system is provided with multiple system modes. When the front-end service pressure is less than a preset pressure value, the controller is simulated to switch under an abnormal scenario and obtain a simulation test result, including: confirming a current system mode of the storage controller system; Confirming the preset periodic time and preset pressure value corresponding to the current system mode; Within the preset periodic time corresponding to the current system mode, if the front-end business pressure is less than the preset pressure value, the controller is simulated to switch under an abnormal scenario and a simulation test result is obtained.

3. The method according to claim 2, characterized in that The current system mode includes a first system mode and a second system mode, the preset periodic time includes a first preset periodic time and a second preset periodic time, and the preset pressure value includes a first preset pressure value and a second preset pressure value. If the front-end business pressure is less than the preset pressure value within the preset periodic time corresponding to the current system mode, simulating the controller switching in an abnormal scenario and obtaining a simulation test result includes: Within the first preset periodic time corresponding to the first system mode, if the front-end business pressure is less than the first preset pressure value, simulating the controller switching in an abnormal scenario and obtaining a first simulation test result; During the second preset periodic time corresponding to the second system mode, if the front-end business pressure is less than the second preset pressure value, the controller is simulated to switch under an abnormal scenario and a second simulation test result is obtained.

4. The method according to claim 3, characterized in that The preset periodic time further includes a third preset periodic time, and the preset pressure value further includes a third preset pressure value. Within the second preset periodic time corresponding to the second system mode, if the front-end business pressure is less than the second preset pressure value, then simulating the controller switching in an abnormal scenario and obtaining a second simulation test result, further comprising: Within the third preset periodic time corresponding to the second system mode, if the front-end business pressure is less than the third preset pressure value, the controller is simulated to switch under an abnormal scenario and a third simulation test result is obtained.

5. The method according to claim 4, characterized in that The issuing of a switching warning of the controller according to a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment includes: When the current system mode is the first system mode, obtaining a first controller switching time and a first switching instantaneous input-output delay from a first simulation test result; If the first controller switching time is greater than the product of the controller switching optimization time and the first preset controller switching time multiple, or if the first switching instantaneous input and output delay is greater than the product of the normal switching instantaneous input and output delay and the first preset switching instantaneous input and output delay multiple, a first-level switching warning of the controller is issued, and a prompt is given as to whether it is necessary to switch to the second system mode.

6. The method according to claim 4, characterized in that The issuing of a switching warning of the controller according to a preset value, the simulation test result, the controller switching optimization time, and the input and output delay at the normal switching moment includes: When the current system mode is the second system mode, obtaining a second controller switching time and a second switching instantaneous input-output delay from a second simulation test result; If the switching time of the second controller is greater than the product of the controller switching optimization time and the second preset controller switching time multiple, or if the input and output delay at the second switching moment is greater than the product of the input and output delay at the normal switching moment and the second preset switching moment input and output delay multiple, then a secondary switching warning of the controller is issued, and the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn.

7. The method according to claim 6, characterized in that After sequentially adjusting the number of input and output queues in the front-end service module, the switch module, and the storage front-end module controlled by the storage controller system, the method further includes: When the current system mode is the second system mode, obtaining a third controller switching time and a third switching instantaneous input-output delay from a third simulation test result; If the third controller switching time is less than or equal to the product of the controller switching optimization time and the second preset controller switching time multiple, and the third switching instantaneous input and output delay is less than or equal to the product of the normal switching instantaneous input and output delay and the second preset switching instantaneous input and output delay multiple, then the number of input and output queues in the front-end business module, switching module and storage front-end module controlled by the storage controller system are adjusted in turn, and the secondary switching warning of the controller is canceled at the same time.

8. A controller switching warning device, characterized in that: Applied to a storage controller system, wherein the storage controller system is connected to a front-end host via a switch, the storage controller system is provided with multiple controllers, and the controllers are used to provide business services for the front-end host. The device includes: A data acquisition module is configured to acquire a front-end business model, front-end business pressure, and back-end business pressure; wherein the front-end business model is a data model issued by the current business end obtained by information interaction between the controller switching optimization management module and the front-end business module, the switching module, and the storage front-end module, and the front-end business model includes at least a data block; A data fitting module, configured to fit the controller switching optimization time and the normal switching instantaneous input and output delay according to a preset embedded database, the front-end business model, the front-end business pressure, and the back-end business pressure; A simulation switching module, configured to simulate the controller switching in an abnormal scenario and obtain a simulation test result when the front-end service pressure is less than a preset pressure value; An early warning module is used to issue a switching early warning for the controller based on a preset value, the simulation test result, the controller switching optimization time, and the normal switching instantaneous input and output delay; wherein the preset value includes a preset controller switching time multiple and a preset switching instantaneous input and output delay multiple, the preset controller switching time multiple includes a first preset controller switching time multiple and a second preset controller switching time multiple, and the preset switching instantaneous input and output delay multiple includes a first preset switching instantaneous input and output delay multiple and a second preset switching instantaneous input and output delay multiple.

9. An electronic device, characterized in that: comprising a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; The memory is used to store computer programs; The processor is configured to implement the method according to any one of claims 1 to 7 when executing a program stored in the memory.

10. A computer-readable storage medium having instructions stored thereon, which, when executed by one or more processors, cause the processors to perform the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Network switching method, terminal and computer readable storage medium

    CN112714476A

  • Double-control storage switching method and device and electronic equipment

    CN113687784A