CN105512343A - Method and device for simulating network anomaly and testing automatic switching of database faults - Google Patents

Method and device for simulating network anomaly and testing automatic switching of database faults Download PDF

Info

Publication number
CN105512343A
CN105512343A CN201610007956.3A CN201610007956A CN105512343A CN 105512343 A CN105512343 A CN 105512343A CN 201610007956 A CN201610007956 A CN 201610007956A CN 105512343 A CN105512343 A CN 105512343A
Authority
CN
China
Prior art keywords
database server
network
packet loss
electronic equipment
sent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610007956.3A
Other languages
Chinese (zh)
Inventor
侯磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201610007956.3A priority Critical patent/CN105512343A/en
Publication of CN105512343A publication Critical patent/CN105512343A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The application discloses a method and a device for simulating network anomaly and testing automatic switching of database faults. One specific embodiment of the network anomaly simulation method comprises the following steps: receiving a to-be-sent data package; determining the current simulation task including any one of the following preset tasks: packet loss status simulation and network delay status simulation; and if the simulation task is the network delay status simulation, sending to-be-sent data to a receiving end corresponding to a sending end according to the correspondence rule of the network address of the to-be-sent data sending end and the network address between the preset sending end and the receiving end after receiving the to-be-sent data packet for a preset time period. According to the embodiment, the network anomaly of the network delay type between the sending end and the receiving end is simulated, so that the automatic switching of database faults triggered by the network anomaly of the network delay type can be tested.

Description

The method of testing that Network Abnormal simulation, database failure are automatically switched and device
Technical field
The application relates to field of computer technology, is specifically related to software technology field, particularly relates to Network Abnormal is simulated, database failure automatically switches method of testing and device.
Background technology
In database purchase service, in order to data security, usually take a master data base and multiple deployment way from database, when master data base breaks down (such as Network Abnormal), need automatically to be promoted to master data base from database, work on.The system of this database purchase service architecture is used to can be described as system based on master-slave database framework.In order to carry out the test of database failure automatic switchover, need the scene simulating various database failure, the execution of automatically switching with trigger data storehouse fault.For the scene of the database failure that Network Abnormal causes, the analogy method of prior art causes the method for Network Abnormal to carry out the execution of trigger data storehouse fault automatic switchover by the means of artificial turn-off data storehouse communication network.
But, for the Network Abnormal of the types such as network delay, the more difficult simulation of prior art, thus cause the database failure automatic switchover being difficult to the Network Abnormal by types such as network delays triggers to be tested.
Summary of the invention
The method of testing that the object of the application is to propose the simulation of a kind of Network Abnormal, database failure automatically switches and device, solve the technical matters that above background technology part is mentioned.
First aspect, this application provides a kind of Network Abnormal analogy method, it is characterized in that, described method comprises: receive packet to be sent; Determine present day analog task, wherein, described simulation task is the one in the following task pre-set: packet loss Simulations, network delay Simulations; If described simulation task is network delay Simulations, after schedule time length then when receiving described packet to be sent, according to the network address of the transmitting terminal of described packet to be sent and the network address rule of correspondence between default transmitting terminal and receiving end, described data to be sent are sent to the receiving end corresponding with described transmitting terminal.
In certain embodiments, described method also comprises: if described simulation task is packet loss Simulations, then do not send described packet to be sent.
In certain embodiments, if described simulation task is packet loss Simulations, does not then send described packet to be sent, comprising: if described simulation task is packet loss Simulations, then based on the packet loss parameter preset, determine whether packet loss; If determine packet loss, then do not send described packet to be sent.
In certain embodiments, described transmitting terminal and described receiving end be respectively based in the main database server in the system of master-slave database framework, demand data end and another, wherein, described demand data end is the electronic equipment carrying out reading and writing data between described main database server.
In certain embodiments, described transmitting terminal and described receiving end be respectively based on the main database server in the system of master-slave database framework, from database server and another.
Second aspect, this application provides the method for testing that a kind of database failure automatically switches, described method comprises: by the method described in first aspect, in the system based on master-slave database framework, between predetermined electronic equipment and the current main database server of described system, analog network is abnormal, wherein, described predetermined electronic equipment be carry out between in described system and current main database server reading and writing data electronic equipment or current each from database server; Judge whether system sends alarm; If do not send alarm, then the malfunction monitoring function existing defects of certainty annuity.
In certain embodiments, described method also comprises: if system sends alarm, then judge whether each electronic equipment communicated to connect with described main database server transfers to communicate to connect with other database server, other database server described for described in each from database server; Communicate to connect with other database server if each electronic equipment described does not transfer to, then the database handoff functionality existing defects of certainty annuity.
In certain embodiments, described by the method described in first aspect, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network is abnormal, comprise: by the method described in first aspect, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network time delay is abnormal; And if describedly do not send alarm, then the malfunction monitoring function existing defects of certainty annuity, comprising: if do not send alarm, then the network delay monitoring function existing defects of certainty annuity.
In certain embodiments, described by the method described in first aspect, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network is abnormal, comprising:
By the method described in some embodiments of first aspect, between predetermined electronic equipment and the master library server of described system, simulate packet loss abnormal; And if describedly do not send alarm, then the malfunction monitoring function existing defects of certainty annuity, comprising: if do not send alarm, then the packet loss monitoring function existing defects of certainty annuity.
The third aspect, this application provides a kind of Network Abnormal analogue means, described device comprises: receives data packets unit, for receiving packet to be sent; Simulation task determining unit, for determining present day analog task, wherein, described simulation task is the one in the following task pre-set: packet loss Simulations, network delay Simulations; Time delay transmitting element, for when described simulation task is network delay Simulations, after schedule time length when receiving described packet to be sent, according to the network address of the transmitting terminal of described packet to be sent and the network address rule of correspondence between default transmitting terminal and receiving end, described data to be sent are sent to the receiving end corresponding with described transmitting terminal.
In certain embodiments, described device also comprises: packet loss unit, for when described simulation task is packet loss Simulations, does not send described packet to be sent.
In certain embodiments, described packet loss unit comprises: packet loss determination subelement, for when described simulation task is packet loss Simulations, based on the packet loss parameter preset, determines whether packet loss; Packet loss subelement, for when determining packet loss, does not send described packet to be sent.
In certain embodiments, described transmitting terminal and described receiving end be respectively based in the main database server in the system of master-slave database framework, demand data end and another, wherein, described demand data end is the electronic equipment carrying out reading and writing data between described main database server.
In certain embodiments, described transmitting terminal and described receiving end be respectively based on the main database server in the system of master-slave database framework, from database server and another.
Fourth aspect, this application provides the proving installation that a kind of database failure automatically switches, described device comprises: Network Abnormal analogue unit, for passing through the device described in the third aspect, in the system based on master-slave database framework, between predetermined electronic equipment and the current main database server of described system, analog network is abnormal, wherein, described predetermined electronic equipment be carry out between in described system and current main database server reading and writing data electronic equipment or current each from database server; Alarm judging unit, for judging whether system sends alarm; Monitoring defect determining unit, for when system does not send alarm, the malfunction monitoring function existing defects of certainty annuity.
In certain embodiments, described device also comprises: switching judging unit, for when system sends alarm, judge whether each electronic equipment communicated to connect with described main database server transfers to communicate to connect with other database server, other database server described for described in each from database server; Handoff functionality defect determining unit, when communicating to connect with other database server for not transferring at each electronic equipment described, the database handoff functionality existing defects of certainty annuity.
In certain embodiments, described Network Abnormal analogue unit comprises: network delay analog submodule unit, for by the device described in the third aspect, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network time delay is abnormal; And described monitoring defect determining unit comprises: network delay monitoring defect determination subelement, for when system does not send alarm, the network delay monitoring function existing defects of certainty annuity.
In certain embodiments, described Network Abnormal analogue unit comprises: packet loss analog submodule unit, for the device described in some embodiments by the claim third aspect, simulates packet loss extremely between predetermined electronic equipment and the master library server of described system; And described monitoring defect determining unit comprises: packet loss monitoring defect determination subelement, for when not sending alarm, then the packet loss monitoring function existing defects of certainty annuity.
The method of testing that the Network Abnormal simulation that the application provides, database failure are automatically switched and device, after the schedule time length when receiving the packet to be sent that transmitting terminal sends, described data to be sent are sent to the receiving end corresponding with described transmitting terminal, simulated the Network Abnormal of the network delay type between transmitting terminal and receiving end, thus the database failure that can trigger the Network Abnormal by network delay type automatic switchover is tested.
Accompanying drawing explanation
By reading the detailed description done non-limiting example done with reference to the following drawings, the other features, objects and advantages of the application will become more obvious:
Fig. 1 is the exemplary system architecture figure that the application can be applied to wherein;
Fig. 2 is the process flow diagram of an embodiment of Network Abnormal analogy method according to the application;
Fig. 3 is the process flow diagram of an embodiment of the method for testing automatically switched according to the database failure of the application;
Fig. 4 is the structural representation of an embodiment of Network Abnormal analogue means according to the application;
Fig. 5 is the structural representation of an embodiment of the proving installation automatically switched according to the database failure of the application;
Fig. 6 is the structural representation of the computer system of the proxy server be suitable for for realizing the embodiment of the present application.
Embodiment
Below in conjunction with drawings and Examples, the application is described in further detail.Be understandable that, specific embodiment described herein is only for explaining related invention, but not the restriction to this invention.It also should be noted that, for convenience of description, in accompanying drawing, illustrate only the part relevant to Invention.
It should be noted that, when not conflicting, the embodiment in the application and the feature in embodiment can combine mutually.Below with reference to the accompanying drawings and describe the application in detail in conjunction with the embodiments.
Fig. 1 shows the exemplary system architecture 100 can applying the method for testing that Network Abnormal is simulated, database failure automatically switches of the application or the embodiment of device.
As shown in Figure 1, system architecture 100 can comprise demand data end 101, proxy server 102, main database server 103, from database server 104,105 and monitoring switching server 106.
Demand data end 101 is communicated with proxy server 102 by network, and is communicated with main database server 103 by proxy server 102, to carry out the operations such as reading and writing data.
Demand data end 101 can be the application server in the application system of B/S (Browser/Server, browser/server) framework; Also can be the client in the application system of C/S (Client/Server, client/server) framework, include but not limited to smart mobile phone, panel computer, pocket computer on knee and desk-top computer etc.
Proxy server 102 is to provide the server of agency service, such as, the packet that demand data end 101 sends is forwarded to main database server 103, and the packet that main database server 103 sends is forwarded to demand data end 101.Monitoring switching server 106 and demand data end 101 all need to be connected with main database server 103 by proxy server 102.In addition, proxy server 102 also provides agency service at main database server 103 and between database server 104,105, and main database server 103 need could carry out data syn-chronization with from database server 104,105 by proxy server 102.
Main database server 103 is the database servers provided support to demand data end 101, the process such as main database server 103 can store the data received, analysis, and result is fed back to demand data end 101 by proxy server 102.
Database failure automatic switchover instrument is installed (such as in monitoring switching server 106, the MHA of Relational DBMS mySQL), when master data base breaks down (such as Network Abnormal), alarm can be sent, and be automatically promoted to main database server by one from data server, work on.It should be noted that, monitoring switching server 106 must not have, and database failure automatic switchover instrument also can be installed on (such as demand data end 101) in other electronic equipment in framework shown in Fig. 1.
In addition, also it should be noted that, the method for testing that the Network Abnormal simulation that the embodiment of the present application provides, database failure are automatically switched is performed by proxy server 102 usually.Correspondingly, the proving installation that Network Abnormal simulation, database failure are automatically switched is arranged in proxy server 102 usually.
Should be appreciated that, the demand data end in Fig. 1, proxy server, main database server, from database server and monitoring switching server number be only schematic.According to realizing needs, the terminal device of arbitrary number, network and server can be had.
Continue the flow process 200 of the embodiment showing the Network Abnormal analogy method according to the application with reference to figure 2, Fig. 2.
As shown in Figure 2, the Network Abnormal analogy method of the present embodiment comprises the following steps:
Step 201, receives packet to be sent.
In the present embodiment, Network Abnormal analogy method is run electronic equipment (proxy server such as shown in Fig. 1) thereon and can be received by wired excessively wireless mode the packet to be sent that other electronic equipment (the demand data end such as shown in Fig. 1, main database server or from database server) sends.
Wherein, above-mentioned radio connection can include but not limited to 3G/4G connection, WiFi connection, bluetooth connection, WiMAX connection, Zigbee connection, UWB (ultrawideband) connection and other radio connection developed known or future now.
Step 202, determines present day analog task.
Wherein, above-mentioned simulation task is the one in the following task pre-set: packet loss Simulations, network delay Simulations.
In the present embodiment, present day analog task is arranged by command line interface (CommandLineInterface, CLI).Wherein, command line interface is the visual cues interface that computer operating system or application program provide for user, utility command line interface, can in specific row input command, receive from operating system and respond, and then input other order etc.
Step 203, if above-mentioned simulation task is network delay Simulations, after schedule time length then when receiving above-mentioned packet to be sent, according to the network address of the transmitting terminal of above-mentioned packet to be sent and the network address rule of correspondence between default transmitting terminal and receiving end, above-mentioned data to be sent are sent to the receiving end corresponding with above-mentioned transmitting terminal.
In the present embodiment, proxy server can by being sent to the receiving end corresponding with above-mentioned transmitting terminal by above-mentioned data to be sent after performing schedule time length that the function (for the Sleep function of Windows system, sleep function for linux system in such as C language) hanging up a period of time realizes when receiving above-mentioned packet to be sent.Wherein, above-mentioned schedule time length by manually pre-setting according to simulated scenario demand, such as, can be arranged by command line interface equally.Simulated scenario can be such as: network keeps time delay or network transient delay.
In some optional implementations of the present embodiment, the Network Abnormal analogy method of the present embodiment can also comprise:
Step 204, if above-mentioned simulation task is packet loss Simulations, does not then send above-mentioned packet to be sent.
By step 204, proxy server has simulated the Network Abnormal of the packet loss type between transmitting terminal and receiving end, thus the database failure that can trigger the Network Abnormal by packet loss type automatic switchover is tested.
Based on above-mentioned implementation, in some optional implementations of the present embodiment, step 204 can specifically comprise: if above-mentioned simulation task is packet loss Simulations, then based on the packet loss parameter preset, determine whether packet loss; If determine packet loss, then do not send above-mentioned packet to be sent.Such as, suppose that the packet loss parameter preset is 50%, proxy server can random number between first stochastic generation 0%-100%, if this random number is greater than/is less than 50%, then determines packet loss, does not send packet to be sent.In addition, proxy server first can also calculate the packet loss of the machine in current schedule time length, if the packet loss calculated is greater than 50%, then determines packet loss, does not send packet to be sent.By this implementation, various order of severity Network Abnormal can be simulated.
In some optional implementations of the present embodiment, above-mentioned transmitting terminal and above-mentioned receiving end can be respectively based in the main database server in the system of master-slave database framework, demand data end and another, wherein, above-mentioned demand data end is the electronic equipment carrying out reading and writing data between above-mentioned main database server.Thus Network Abnormal when can carry out reading and writing data between simulated data demand end and main database server.
In some optional implementations of the present embodiment, above-mentioned transmitting terminal and above-mentioned receiving end can be respectively based on the main database server in the system of master-slave database framework, from database server and another.Thus main database server can be simulated and each is from Network Abnormal when carrying out database synchronization between database server.
The Network Abnormal analogy method that the present embodiment provides, after the schedule time length when receiving the packet to be sent that transmitting terminal sends, above-mentioned data to be sent are sent to the receiving end corresponding with above-mentioned transmitting terminal, simulated the Network Abnormal of the network delay type between transmitting terminal and receiving end, thus the database failure that can trigger the Network Abnormal by network delay type automatic switchover is tested.
The flow process 300 of an embodiment of the method for testing automatically switched according to the database failure of the application is shown with further reference to Fig. 3, Fig. 3.
As shown in Figure 3, the method for testing that the database failure of the present embodiment automatically switches comprises the following steps:
Step 301, by the Network Abnormal analogy method of the corresponding embodiment of Fig. 2, in the system based on master-slave database framework, between predetermined electronic equipment and the current main database server of said system, analog network is abnormal.
Wherein, above-mentioned predetermined electronic equipment be carry out between in said system and current main database server reading and writing data electronic equipment or current each from database server.
In the present embodiment, the concrete process of step 301 with reference to the detailed description of the corresponding embodiment of figure 2, can not repeat them here.
Step 302, judges whether system sends alarm.
In the present embodiment, by whether receiving alarm information, proxy server can judge whether system sends alarm.Wherein, alarm information can be the message of the form such as mail, system PUSH message.
Step 303, if do not send alarm, then the malfunction monitoring function existing defects of certainty annuity.
In the present embodiment, proxy server after the malfunction monitoring function existing defects of certainty annuity, can return the message of the malfunction monitoring function existing defects about system by command line interface.
In some optional implementations of the present embodiment, the method of testing that the database failure of the present embodiment automatically switches can also comprise: if system sends alarm, then judge whether each electronic equipment communicated to connect with above-mentioned main database server transfers to communicate to connect with other database server, other database server above-mentioned is that each is above-mentioned from database server; Communicate to connect with other database server if each electronic equipment above-mentioned does not transfer to, then the database handoff functionality existing defects of certainty annuity.Wherein, each electronic equipment of communicating to connect of above-mentioned and main database server can for carrying out the electronic equipment (the demand data end namely shown in Fig. 1) of reading and writing data and each is from database server between current main database server.Other database server above-mentioned can be selected at each by command line interface and arrange from database server, is just about to become new main database server from database server by what select.Proxy server can be carried out data syn-chronization with above-mentioned by the new main database server selected by judging whether non-selected other transfer to from database server and former main database server, and whether demand data end is carried out by the new main database server selected the database handoff functionality existing defects that reading and writing data carrys out certainty annuity with above-mentioned with transferring to.
In some optional implementations of the present embodiment, step 301 can comprise: by the Network Abnormal analogy method of the corresponding embodiment of Fig. 2 in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of said system, analog network time delay is abnormal.And step 303 can comprise: if do not send alarm, then the network delay monitoring function existing defects of certainty annuity.By this implementation, orient the network delay monitoring function defect that system exists more accurately.
In some optional implementations of the present embodiment, step 301 can comprise: by the abnormal analogy method of packet loss in the optional implementation in the corresponding embodiment of Fig. 2, simulate packet loss extremely between predetermined electronic equipment and the master library server of said system.And step 303 can comprise: if do not send alarm, then the packet loss monitoring function existing defects of certainty annuity.By this implementation, orient the packet loss monitoring function defect that system exists more accurately.
The method of testing that the database failure that the present embodiment provides automatically switches, abnormal by analog network between above-mentioned predetermined electronic equipment and the current main database server of said system, and when system does not send alarm the malfunction monitoring function existing defects of certainty annuity, achieve the database failure that the Network Abnormal by types such as network delays is triggered and automatically switch and test.
Below with reference to Fig. 4, as the realization to method shown in above-mentioned Fig. 2, this application provides an a kind of embodiment of Network Abnormal analogue means, this device embodiment is corresponding with the embodiment of the method shown in Fig. 2, and this device specifically can be applied in proxy server.
As shown in Figure 4, the Network Abnormal analogue means 400 that the present embodiment is above-mentioned comprises: receives data packets unit 401, simulation task determining unit 402 and time delay transmitting element 403.Wherein, receives data packets unit 401, for receiving packet to be sent; Simulation task determining unit 402, for determining present day analog task, wherein, above-mentioned simulation task is the one in the following task pre-set: packet loss Simulations, network delay Simulations; Time delay transmitting element 403, for when above-mentioned simulation task is network delay Simulations, after schedule time length when receiving above-mentioned packet to be sent, according to the network address of the transmitting terminal of above-mentioned packet to be sent and the network address rule of correspondence between default transmitting terminal and receiving end, above-mentioned data to be sent are sent to the receiving end corresponding with above-mentioned transmitting terminal.
In the present embodiment, the concrete process of receives data packets unit 401, simulation task determining unit 402 and time delay transmitting element 403 respectively with reference to the related description of step 201, step 202 and step 203 in the corresponding embodiment of figure 2, can not repeat them here.
In some optional implementations of the present embodiment, the Network Abnormal analogue means of the present embodiment can also comprise: packet loss unit 404, for when above-mentioned simulation task is packet loss Simulations, does not send above-mentioned packet to be sent.The concrete process of packet loss unit 404 and the technique effect brought thereof with reference to the associated description of corresponding implementation in the corresponding embodiment of figure 2, can not repeat them here.
In some optional implementations of the present embodiment, packet loss unit 404 can comprise: packet loss determination subelement 4041, for when above-mentioned simulation task is packet loss Simulations, based on the packet loss parameter preset, determines whether packet loss; Packet loss subelement 4042, for when determining packet loss, does not send above-mentioned packet to be sent.The concrete process of packet loss determination subelement 4041 and packet loss subelement 4042 and the technique effect brought thereof with reference to the associated description of corresponding implementation in the corresponding embodiment of figure 2, can not repeat them here.
In some optional implementations of the present embodiment, above-mentioned transmitting terminal and above-mentioned receiving end be respectively based in the main database server in the system of master-slave database framework, demand data end and another, wherein, above-mentioned demand data end is the electronic equipment carrying out reading and writing data between above-mentioned main database server.Thus Network Abnormal when can carry out reading and writing data between simulated data demand end and main database server.
In some optional implementations of the present embodiment, above-mentioned transmitting terminal and above-mentioned receiving end be respectively based on the main database server in the system of master-slave database framework, from database server and another.Thus main database server can be simulated and each is from Network Abnormal when carrying out database synchronization between database server.
The Network Abnormal analogue means that the present embodiment provides, by time delay transmitting element 403 receives data packets unit 401 receive transmitting terminal send packet to be sent time schedule time length after, above-mentioned data to be sent are sent to the receiving end corresponding with above-mentioned transmitting terminal, simulated the Network Abnormal of the network delay type between transmitting terminal and receiving end, thus the database failure that can trigger the Network Abnormal by network delay type automatic switchover is tested.
It will be understood by those skilled in the art that above-mentioned Network Abnormal analogue means 400 also comprises some other known features, such as processor, storeies etc., in order to unnecessarily fuzzy embodiment of the present disclosure, these known structures are not shown in the diagram.
Continue with reference to figure 5, as the realization to method shown in above-mentioned Fig. 3, this application provides an embodiment of the proving installation that a kind of database failure automatically switches, this device embodiment is corresponding with the embodiment of the method shown in Fig. 3, and this device specifically can be applied in proxy server.
As shown in Figure 5, the proving installation 500 that the database failure that the present embodiment is above-mentioned automatically switches comprises: Network Abnormal analogue unit 501, alarm judging unit 502 and monitoring defect determining unit 503.Wherein, Network Abnormal analogue unit 501, for passing through the arbitrary above-mentioned device of claim 1-3, in the system based on master-slave database framework, between predetermined electronic equipment and the current main database server of said system, analog network is abnormal, wherein, above-mentioned predetermined electronic equipment be carry out between in said system and current main database server reading and writing data electronic equipment or current each from database server; Alarm judging unit 502, for judging whether system sends alarm; Monitoring defect determining unit 503, for when system does not send alarm, the malfunction monitoring function existing defects of certainty annuity.
In the present embodiment, the concrete process of Network Abnormal analogue unit 501, alarm judging unit 502 and monitoring defect determining unit 503 respectively with reference to the related description of step 301, step 302 and step 303 in the corresponding embodiment of figure 3, can not repeat them here.
In some optional implementations of the present embodiment, the proving installation that the database failure of the present embodiment automatically switches can also comprise: switching judging unit 504, for when system sends alarm, judge whether each electronic equipment communicated to connect with above-mentioned main database server transfers to communicate to connect with other database server, other database server above-mentioned is that each is above-mentioned from database server; Handoff functionality defect determining unit 505, when communicating to connect with other database server for not transferring at each electronic equipment above-mentioned, the database handoff functionality existing defects of certainty annuity.The concrete process of switching judging unit 504 and handoff functionality defect determining unit 505 and the technique effect brought thereof with reference to the associated description of corresponding implementation in the corresponding embodiment of figure 3, can not repeat them here.
In some optional implementations of the present embodiment, Network Abnormal analogue unit 501 can comprise: network delay analog submodule unit 5011, for the device by the corresponding embodiment of Fig. 4, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of said system, analog network time delay is abnormal.And monitoring defect determining unit 503 can comprise: network delay monitoring defect determination subelement 5031, for when system does not send alarm, the network delay monitoring function existing defects of certainty annuity.By this implementation, orient the network delay monitoring function defect that system exists more accurately.
In some optional implementations of the present embodiment, Network Abnormal analogue unit 501 can comprise: packet loss analog submodule unit 5012, for the device provided by related realization mode in the corresponding embodiment of Fig. 1, between predetermined electronic equipment and the master library server of said system, simulate packet loss extremely.And monitoring defect determining unit 503 can comprise: packet loss monitoring defect determination subelement 5032, for when not sending alarm, then the packet loss monitoring function existing defects of certainty annuity.
The proving installation that the database failure that the present embodiment provides automatically switches, abnormal by Network Abnormal analogue unit 501 analog network between above-mentioned predetermined electronic equipment and the current main database server of said system, and when alarm judging unit 502 judges that system does not send alarm, by the malfunction monitoring function existing defects of monitoring defect determining unit 503 certainty annuity, the database failure automatic switchover achieved the Network Abnormal by types such as network delays triggers is tested.
It will be appreciated by those skilled in the art that, the proving installation 500 that above-mentioned database failure automatically switches also comprises some other known features, such as processor, storer etc., in order to unnecessarily fuzzy embodiment of the present disclosure, these known structures are not shown in Figure 5.
Below with reference to Fig. 6, it illustrates the structural representation of the computer system 600 of the proxy server be suitable for for realizing the embodiment of the present application.
As shown in Figure 6, computer system 600 comprises CPU (central processing unit) (CPU) 601, and it or can be loaded into the program random access storage device (RAM) 603 from storage area 608 and perform various suitable action and process according to the program be stored in ROM (read-only memory) (ROM) 602.In RAM603, also store system 600 and operate required various program and data.CPU601, ROM602 and RAM603 are connected with each other by bus 604.I/O (I/O) interface 605 is also connected to bus 604.
I/O interface 605 is connected to: the importation 606 comprising keyboard, mouse etc. with lower component; Comprise the output 607 of such as cathode-ray tube (CRT) (CRT), liquid crystal display (LCD) etc. and loudspeaker etc.; Comprise the storage area 608 of hard disk etc.; And comprise the communications portion 609 of network interface unit of such as LAN card, modulator-demodular unit etc.Communications portion 609 is via the network executive communication process of such as the Internet.Driver 610 is also connected to I/O interface 605 as required.Detachable media 611, such as disk, CD, magneto-optic disk, semiconductor memory etc., be arranged on driver 610 as required, so that the computer program read from it is mounted into storage area 608 as required.
Especially, according to embodiment of the present disclosure, the process that reference flow sheet describes above may be implemented as computer software programs.Such as, embodiment of the present disclosure comprises a kind of computer program, and it comprises the computer program visibly comprised on a machine-readable medium, and described computer program comprises the program code for the method shown in flowchart.In such embodiments, this computer program can be downloaded and installed from network by communications portion 609, and/or is mounted from detachable media 611.
Process flow diagram in accompanying drawing and block diagram, illustrate according to the architectural framework in the cards of the system of the various embodiment of the application, method and computer program product, function and operation.In this, each square frame in process flow diagram or block diagram can represent a part for module, program segment or a code, and a part for described module, program segment or code comprises one or more executable instruction for realizing the logic function specified.Also it should be noted that at some as in the realization of replacing, the function marked in square frame also can be different from occurring in sequence of marking in accompanying drawing.Such as, in fact the square frame that two adjoining lands represent can perform substantially concurrently, and they also can perform by contrary order sometimes, and this determines according to involved function.Also it should be noted that, the combination of the square frame in each square frame in block diagram and/or process flow diagram and block diagram and/or process flow diagram, can realize by the special hardware based system of the function put rules into practice or operation, or can realize with the combination of specialized hardware and computer instruction.
Be described in unit involved in the embodiment of the present application to be realized by the mode of software, also can be realized by the mode of hardware.Described unit also can be arranged within a processor, such as, can be described as: a kind of processor comprises receives data packets unit, simulation task determining unit and time delay transmitting element.Wherein, the title of these unit does not form the restriction to this unit itself under certain conditions, and such as, receives data packets unit can also be described to " receiving the unit of packet to be sent ".
As another aspect, present invention also provides a kind of non-volatile computer storage medium, this non-volatile computer storage medium can be the non-volatile computer storage medium comprised in device described in above-described embodiment; Also can be individualism, be unkitted the non-volatile computer storage medium allocated in terminal.Above-mentioned non-volatile computer storage medium stores one or more program, when one or more program described is performed by an equipment, makes described equipment: receive packet to be sent; Determine present day analog task, wherein, described simulation task is the one in the following task pre-set: packet loss Simulations, network delay Simulations; If described simulation task is network delay Simulations, after schedule time length then when receiving described packet to be sent, according to the network address of the transmitting terminal of described packet to be sent and the network address rule of correspondence between default transmitting terminal and receiving end, described data to be sent are sent to the receiving end corresponding with described transmitting terminal.
More than describe and be only the preferred embodiment of the application and the explanation to institute's application technology principle.Those skilled in the art are to be understood that, invention scope involved in the application, be not limited to the technical scheme of the particular combination of above-mentioned technical characteristic, also should be encompassed in when not departing from described inventive concept, other technical scheme of being carried out combination in any by above-mentioned technical characteristic or its equivalent feature and being formed simultaneously.The technical characteristic that such as, disclosed in above-mentioned feature and the application (but being not limited to) has similar functions is replaced mutually and the technical scheme formed.

Claims (18)

1. a Network Abnormal analogy method, is characterized in that, described method comprises:
Receive packet to be sent;
Determine present day analog task, wherein, described simulation task is the one in the following task pre-set: packet loss Simulations, network delay Simulations;
If described simulation task is network delay Simulations, after schedule time length then when receiving described packet to be sent, according to the network address of the transmitting terminal of described packet to be sent and the network address rule of correspondence between default transmitting terminal and receiving end, described data to be sent are sent to the receiving end corresponding with described transmitting terminal.
2. method according to claim 1, is characterized in that, described method also comprises:
If described simulation task is packet loss Simulations, then do not send described packet to be sent.
3. method according to claim 2, is characterized in that, if described simulation task is packet loss Simulations, does not then send described packet to be sent, comprising:
If described simulation task is packet loss Simulations, then based on the packet loss parameter preset, determine whether packet loss;
If determine packet loss, then do not send described packet to be sent.
4. according to the arbitrary described method of claim 1-3, it is characterized in that, described transmitting terminal and described receiving end be respectively based in the main database server in the system of master-slave database framework, demand data end and another, wherein, described demand data end is the electronic equipment carrying out reading and writing data between described main database server.
5., according to the arbitrary described method of claim 1-3, it is characterized in that, described transmitting terminal and described receiving end be respectively based on the main database server in the system of master-slave database framework, from database server and another.
6. a method of testing for database failure automatic switchover, it is characterized in that, described method comprises:
By the arbitrary described method of claim 1-3, in the system based on master-slave database framework, between predetermined electronic equipment and the current main database server of described system, analog network is abnormal, wherein, described predetermined electronic equipment be carry out between in described system and current main database server reading and writing data electronic equipment or current each from database server;
Judge whether system sends alarm;
If do not send alarm, then the malfunction monitoring function existing defects of certainty annuity.
7. method according to claim 6, is characterized in that, described method also comprises:
If system sends alarm, then judge whether each electronic equipment communicated to connect with described main database server transfers to and communicate to connect with other database server, other database server described for described in each from database server;
Communicate to connect with other database server if each electronic equipment described does not transfer to, then the database handoff functionality existing defects of certainty annuity.
8. according to the arbitrary described method of claim 6-7, it is characterized in that, described by the arbitrary described method of claim 1-3, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network is abnormal, comprising:
By the arbitrary described method of claim 1-3, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network time delay is abnormal; And
Do not send alarm if described, then the malfunction monitoring function existing defects of certainty annuity, comprising:
If do not send alarm, then the network delay monitoring function existing defects of certainty annuity.
9. according to the arbitrary described method of claim 6-7, it is characterized in that, described by the arbitrary described method of claim 1-3, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network is abnormal, comprising:
By the arbitrary described method of claim 2-3, between predetermined electronic equipment and the master library server of described system, simulate packet loss extremely; And
Do not send alarm if described, then the malfunction monitoring function existing defects of certainty annuity, comprising:
If do not send alarm, then the packet loss monitoring function existing defects of certainty annuity.
10. a Network Abnormal analogue means, is characterized in that, described device comprises:
Receives data packets unit, for receiving packet to be sent;
Simulation task determining unit, for determining present day analog task, wherein, described simulation task is the one in the following task pre-set: packet loss Simulations, network delay Simulations;
Time delay transmitting element, for when described simulation task is network delay Simulations, after schedule time length when receiving described packet to be sent, according to the network address of the transmitting terminal of described packet to be sent and the network address rule of correspondence between default transmitting terminal and receiving end, described data to be sent are sent to the receiving end corresponding with described transmitting terminal.
11. devices according to claim 10, is characterized in that, described device also comprises:
Packet loss unit, for when described simulation task is packet loss Simulations, does not send described packet to be sent.
12. devices according to claim 11, is characterized in that, described packet loss unit comprises:
Packet loss determination subelement, for when described simulation task is packet loss Simulations, based on the packet loss parameter preset, determines whether packet loss;
Packet loss subelement, for when determining packet loss, does not send described packet to be sent.
13. according to the arbitrary described device of claim 10-12, it is characterized in that, described transmitting terminal and described receiving end be respectively based in the main database server in the system of master-slave database framework, demand data end and another, wherein, described demand data end is the electronic equipment carrying out reading and writing data between described main database server.
14., according to the arbitrary described device of claim 10-12, is characterized in that, described transmitting terminal and described receiving end be respectively based on the main database server in the system of master-slave database framework, from database server and another.
The proving installation that 15. 1 kinds of database failures automatically switch, it is characterized in that, described device comprises:
Network Abnormal analogue unit, for passing through the arbitrary described device of claim 10-12, in the system based on master-slave database framework, between predetermined electronic equipment and the current main database server of described system, analog network is abnormal, wherein, described predetermined electronic equipment be carry out between in described system and current main database server reading and writing data electronic equipment or current each from database server;
Alarm judging unit, for judging whether system sends alarm;
Monitoring defect determining unit, for when system does not send alarm, the malfunction monitoring function existing defects of certainty annuity.
16. devices according to claim 15, is characterized in that, described device also comprises:
Switching judging unit, for when system sends alarm, judge whether each electronic equipment communicated to connect with described main database server transfers to communicate to connect with other database server, other database server described for described in each from database server;
Handoff functionality defect determining unit, when communicating to connect with other database server for not transferring at each electronic equipment described, the database handoff functionality existing defects of certainty annuity.
17. according to the arbitrary described device of claim 15-16, it is characterized in that, described Network Abnormal analogue unit comprises: network delay analog submodule unit, for passing through the arbitrary described device of claim 10-12, in the system based on master-slave database framework, between predetermined electronic equipment and the main database server of described system, analog network time delay is abnormal; And
Described monitoring defect determining unit comprises: network delay monitoring defect determination subelement, for when system does not send alarm, and the network delay monitoring function existing defects of certainty annuity.
18. according to the arbitrary described device of claim 15-16, it is characterized in that, described Network Abnormal analogue unit comprises: packet loss analog submodule unit, for by the arbitrary described device of claim 11-12, simulates packet loss extremely between predetermined electronic equipment and the master library server of described system; And
Described monitoring defect determining unit comprises: packet loss monitoring defect determination subelement, for when not sending alarm, then and the packet loss monitoring function existing defects of certainty annuity.
CN201610007956.3A 2016-01-06 2016-01-06 Method and device for simulating network anomaly and testing automatic switching of database faults Pending CN105512343A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610007956.3A CN105512343A (en) 2016-01-06 2016-01-06 Method and device for simulating network anomaly and testing automatic switching of database faults

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610007956.3A CN105512343A (en) 2016-01-06 2016-01-06 Method and device for simulating network anomaly and testing automatic switching of database faults

Publications (1)

Publication Number Publication Date
CN105512343A true CN105512343A (en) 2016-04-20

Family

ID=55720323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610007956.3A Pending CN105512343A (en) 2016-01-06 2016-01-06 Method and device for simulating network anomaly and testing automatic switching of database faults

Country Status (1)

Country Link
CN (1) CN105512343A (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656765A (en) * 2016-12-31 2017-05-10 广州爱美互动网络股份有限公司 WeChat public number electronic music album
CN107231208A (en) * 2017-07-19 2017-10-03 京信通信系统(中国)有限公司 A kind of clock synchronizing method and system
CN108712285A (en) * 2018-05-18 2018-10-26 国家电网公司信息通信分公司 A kind of analog simulation method and device of optical transport network
CN108763039A (en) * 2018-04-02 2018-11-06 阿里巴巴集团控股有限公司 A kind of traffic failure analogy method, device and equipment
CN108882275A (en) * 2017-05-16 2018-11-23 大唐移动通信设备有限公司 A kind of data processing method and device
CN109086211A (en) * 2018-08-22 2018-12-25 平安科技(深圳)有限公司 Analog network abnormality eliminating method, device, computer equipment and storage medium
CN109257224A (en) * 2018-10-08 2019-01-22 武汉达梦数据库有限公司 A kind of database communication network test simulation method and device
CN109495336A (en) * 2018-08-28 2019-03-19 优视科技(中国)有限公司 Network Abnormal test method and device, computer equipment and readable medium
CN110324161A (en) * 2018-03-29 2019-10-11 大唐联仪科技有限公司 A kind of test method and equipment of transport protocol
CN111475359A (en) * 2020-04-13 2020-07-31 腾讯音乐娱乐科技(深圳)有限公司 System testing method, device and storage medium under multi-message interaction scene
CN112506729A (en) * 2019-09-16 2021-03-16 腾讯科技(深圳)有限公司 Fault simulation method and device
CN113821481A (en) * 2020-06-19 2021-12-21 北京金山云网络技术有限公司 Test data source generation method and device and server

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6901357B1 (en) * 1999-12-14 2005-05-31 Microsoft Corporation System and method for simulating network connection characteristics
CN101001179A (en) * 2006-01-11 2007-07-18 中兴通讯股份有限公司 Detection method for carrier network
CN101141768A (en) * 2007-10-12 2008-03-12 中兴通讯股份有限公司 Test method and device for simulating voice quality variation aroused by network characteristic
CN101242320A (en) * 2008-03-13 2008-08-13 华为技术有限公司 Method and device for monitoring network path
CN101729290A (en) * 2009-11-04 2010-06-09 中兴通讯股份有限公司 Method and device for realizing business system protection
CN201571069U (en) * 2009-11-13 2010-09-01 福建星网锐捷网络有限公司 Access equipment and system thereof
CN102611590A (en) * 2012-04-23 2012-07-25 网经科技(苏州)有限公司 Voice test method for simulating packet loss, delay and jitter under IMS (internet protocol multimedia subsystem) large network environment
CN103259678A (en) * 2013-04-28 2013-08-21 华为技术有限公司 Main-auxiliary switching method, device, equipment and system
CN103618645A (en) * 2013-11-28 2014-03-05 武汉虹旭信息技术有限责任公司 Complex network environment test system and method with intelligent simulation function
EP2784984A1 (en) * 2013-03-28 2014-10-01 British Telecommunications public limited company Monitoring network performance

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6901357B1 (en) * 1999-12-14 2005-05-31 Microsoft Corporation System and method for simulating network connection characteristics
CN101001179A (en) * 2006-01-11 2007-07-18 中兴通讯股份有限公司 Detection method for carrier network
CN101141768A (en) * 2007-10-12 2008-03-12 中兴通讯股份有限公司 Test method and device for simulating voice quality variation aroused by network characteristic
CN101242320A (en) * 2008-03-13 2008-08-13 华为技术有限公司 Method and device for monitoring network path
CN101729290A (en) * 2009-11-04 2010-06-09 中兴通讯股份有限公司 Method and device for realizing business system protection
CN201571069U (en) * 2009-11-13 2010-09-01 福建星网锐捷网络有限公司 Access equipment and system thereof
CN102611590A (en) * 2012-04-23 2012-07-25 网经科技(苏州)有限公司 Voice test method for simulating packet loss, delay and jitter under IMS (internet protocol multimedia subsystem) large network environment
EP2784984A1 (en) * 2013-03-28 2014-10-01 British Telecommunications public limited company Monitoring network performance
CN103259678A (en) * 2013-04-28 2013-08-21 华为技术有限公司 Main-auxiliary switching method, device, equipment and system
CN103618645A (en) * 2013-11-28 2014-03-05 武汉虹旭信息技术有限责任公司 Complex network environment test system and method with intelligent simulation function

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张建: "双机热备让网络变得更可靠", 《上海信息化》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656765A (en) * 2016-12-31 2017-05-10 广州爱美互动网络股份有限公司 WeChat public number electronic music album
CN108882275A (en) * 2017-05-16 2018-11-23 大唐移动通信设备有限公司 A kind of data processing method and device
CN107231208A (en) * 2017-07-19 2017-10-03 京信通信系统(中国)有限公司 A kind of clock synchronizing method and system
CN110324161A (en) * 2018-03-29 2019-10-11 大唐联仪科技有限公司 A kind of test method and equipment of transport protocol
CN108763039A (en) * 2018-04-02 2018-11-06 阿里巴巴集团控股有限公司 A kind of traffic failure analogy method, device and equipment
CN108763039B (en) * 2018-04-02 2021-09-21 创新先进技术有限公司 Service fault simulation method, device and equipment
CN108712285B (en) * 2018-05-18 2021-06-18 国家电网公司信息通信分公司 Analog simulation method and device of optical transmission network
CN108712285A (en) * 2018-05-18 2018-10-26 国家电网公司信息通信分公司 A kind of analog simulation method and device of optical transport network
CN109086211A (en) * 2018-08-22 2018-12-25 平安科技(深圳)有限公司 Analog network abnormality eliminating method, device, computer equipment and storage medium
CN109086211B (en) * 2018-08-22 2023-04-07 平安科技(深圳)有限公司 Method and device for processing simulation network exception, computer equipment and storage medium
CN109495336A (en) * 2018-08-28 2019-03-19 优视科技(中国)有限公司 Network Abnormal test method and device, computer equipment and readable medium
CN109257224B (en) * 2018-10-08 2021-02-09 武汉达梦数据库股份有限公司 Database communication network test simulation method and device
CN109257224A (en) * 2018-10-08 2019-01-22 武汉达梦数据库有限公司 A kind of database communication network test simulation method and device
CN112506729A (en) * 2019-09-16 2021-03-16 腾讯科技(深圳)有限公司 Fault simulation method and device
CN112506729B (en) * 2019-09-16 2024-05-10 腾讯科技(深圳)有限公司 Fault simulation method and device
CN111475359A (en) * 2020-04-13 2020-07-31 腾讯音乐娱乐科技(深圳)有限公司 System testing method, device and storage medium under multi-message interaction scene
CN113821481A (en) * 2020-06-19 2021-12-21 北京金山云网络技术有限公司 Test data source generation method and device and server
CN113821481B (en) * 2020-06-19 2024-05-24 北京金山云网络技术有限公司 Method and device for generating test data source and server

Similar Documents

Publication Publication Date Title
CN105512343A (en) Method and device for simulating network anomaly and testing automatic switching of database faults
CN110888414B (en) Test method for upgrading vehicle controller
US7779303B2 (en) Targeted regression testing
CN105260299A (en) Method, device, and system for software test
CN105718570A (en) Data migration method and device used for database
US20180121335A1 (en) Testing a virtual network function by a virtual network tester
US10838390B2 (en) Program creation support apparatus, control method for program creation support apparatus, and control program for program creation support apparatus
CN111198814A (en) Continuously integrated acceptance system for continuous delivery
CN210666480U (en) Vehicle test system
WO2022127504A1 (en) Network element management method and apparatus, and storage medium
CN105338078A (en) Data storage method and device used for storing system
CN103634147A (en) Network topology management method and equipment
CN105512043A (en) Test method and device
CN114185792A (en) Data isolation method, device and equipment for pressure measurement scene and storage medium
CN107992424A (en) Automatic test analysis method, application server and computer-readable recording medium
CN106155699A (en) The management method of a kind of background process and mobile terminal
CN114168471A (en) Test method, test device, electronic equipment and storage medium
CN104978276A (en) Method, device and system used for detecting software
CN107645397B (en) System, device and method for fault simulation in distributed system
CN103399776A (en) Creation method and system for reusable MOCK
CN110442059B (en) Controlled equipment expanding method and device and control equipment
CN112822073A (en) Test method, device, system, electronic equipment and readable storage medium
CN114978923B (en) Fault exercise method, device and system
CN102546652A (en) System and method for server load balancing
CN102455958A (en) Test system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160420