CN112882883A - Shutdown test method and apparatus, electronic device, and computer-readable storage medium - Google Patents

Shutdown test method and apparatus, electronic device, and computer-readable storage medium Download PDF

Info

Publication number
CN112882883A
CN112882883A CN202110210407.7A CN202110210407A CN112882883A CN 112882883 A CN112882883 A CN 112882883A CN 202110210407 A CN202110210407 A CN 202110210407A CN 112882883 A CN112882883 A CN 112882883A
Authority
CN
China
Prior art keywords
test
shutdown
application server
database
service data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110210407.7A
Other languages
Chinese (zh)
Other versions
CN112882883B (en
Inventor
鲁凡
林海
郑培龙
梁永尧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110210407.7A priority Critical patent/CN112882883B/en
Publication of CN112882883A publication Critical patent/CN112882883A/en
Application granted granted Critical
Publication of CN112882883B publication Critical patent/CN112882883B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/24Marginal checking or other specified testing methods not covered by G06F11/26, e.g. race tests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The disclosure provides a halt test method and device, electronic equipment and a computer readable storage medium, which can be used in the fields of cloud computing, finance and the like. The shutdown test method comprises the following steps: target service data in a database is locked, wherein the target service data are data which need to be accessed when a service is tested; sending a test service request to the application server so that the application server executes a shutdown test based on the target service data when responding to the test service request; obtaining a test result returned after the application server executes the shutdown test; and determining the effectiveness of the shutdown test according to the test result.

Description

Shutdown test method and apparatus, electronic device, and computer-readable storage medium
Technical Field
The present disclosure relates to the field of cloud computing, finance, or other technologies, and more particularly, to a method and apparatus for downtime testing, an electronic device, a computer-readable storage medium, and a computer program product.
Background
In recent years, with the continuous progress of informatization and the requirement of providing services continuously for 7 × 24 hours, a simple and rough upgrading mode of stopping a server and then restarting the server after updating the version is not allowed in the version updating process, at present, the graceful shutdown is gradually popularized in a financial system, and the graceful shutdown needs to ensure that the business operation being executed is not influenced, so that the validity of the graceful shutdown needs to be tested.
In the process of realizing the concept of the present disclosure, the inventor finds that in the related art, at least the following problems exist, the existing test method usually carries out blind test through a plurality of servers, and because whether in-transit transaction exists in the test process cannot be ensured, even if no abnormal situation occurs in the test process, elegant shutdown cannot be effectively proved to be effective.
Disclosure of Invention
In view of the above, the present disclosure provides a shutdown testing method and apparatus, an electronic device, and a computer-readable storage medium and a computer program product.
One aspect of the present disclosure provides a shutdown testing method, including:
target service data in a database is locked, wherein the target service data are data which need to be accessed when a service is tested;
sending a test service request to the application server so that the application server executes a shutdown test based on the target service data when responding to the test service request;
obtaining a test result returned after the application server executes the shutdown test; and
and determining the effectiveness of the shutdown test according to the test result.
According to an embodiment of the present disclosure, the locking the target service data in the database includes: and sending a lock instruction to the database so that the database responds to the lock instruction to execute the lock operation on the target service data.
According to an embodiment of the present disclosure, further comprising: and after the application server executes the shutdown test, unlocking the target business data in the database.
According to an embodiment of the present disclosure, the unlocking the target service data in the database includes: and sending an unlocking instruction to the database so that the database responds to the unlocking instruction to execute unlocking operation on the target service data.
According to an embodiment of the present disclosure, wherein performing the shutdown test based on the target service data includes:
receiving a shutdown notification sent by an application server;
and responding to the shutdown notification, and after waiting for first preset time, disconnecting the connection with the application server, wherein the first preset time is used for acquiring target service data from the database and returning a test result to the client when the application server responds to the test service request.
According to the embodiment of the disclosure, after the shutdown notification sent by the application server is received, the application server disconnects the connection with the client after waiting for the second preset time, wherein the second preset time comprises the push delay time of the shutdown notification and the third preset time, and the third preset time is used for acquiring the target service data from the database and returning the test result to the client when the application server responds to the test service request.
Another aspect of the present disclosure provides a shutdown test apparatus, including:
the locking module is used for locking target service data in the database, wherein the target service data is data which needs to be accessed when testing services;
the sending module is used for sending a test service request to the application server so that the application server executes a halt test based on target service data when responding to the test service request;
the acquisition module is used for acquiring a test result returned after the application server executes the shutdown test; and
and the determining module is used for determining the effectiveness of the shutdown test according to the test result.
According to an embodiment of the present disclosure, the locking the target service data in the database includes: and sending a lock instruction to the database so that the database executes lock operation on the target service data based on the lock instruction when responding to the lock instruction.
According to an embodiment of the present disclosure, the shutdown test apparatus further includes: and the unlocking module is used for unlocking the target service data in the database after the application server executes the shutdown test.
According to an embodiment of the present disclosure, the unlocking the target service data in the database includes: and sending an unlocking instruction to the database so that the database executes unlocking operation on the target service data based on the unlocking instruction when responding to the unlocking instruction.
According to an embodiment of the present disclosure, wherein performing the shutdown test based on the target service data includes:
receiving a shutdown notification sent by an application server;
and responding to the shutdown notification, and after waiting for first preset time, disconnecting the application server, wherein the first preset time is used for the application server to respond to the test service request, acquire target service data from the database and return a test result to the client.
According to the embodiment of the disclosure, after the shutdown notification sent by the application server is received, the application server disconnects the connection with the client after waiting for the second preset time, wherein the second preset time comprises the push delay time of the shutdown notification and the third preset time, and the third preset time is used for the application server to respond to the test service request, acquire the target service data from the database and return the test result to the client.
Another aspect of the present disclosure provides an electronic device including: one or more processors; memory to store one or more instructions, wherein the one or more instructions, when executed by the one or more processors, cause the one or more processors to implement a method as described above.
Another aspect of the present disclosure provides a computer-readable storage medium storing computer-executable instructions for implementing the method as described above when executed.
Another aspect of the disclosure provides a computer program product comprising computer executable instructions for implementing the method as described above when executed.
According to the embodiment of the disclosure, target service data in the database is locked in advance before testing, and on-the-way transaction in the testing process is ensured, so that the technical problem that in the prior art, on-the-way transaction in the testing process cannot be ensured due to blind testing is at least partially overcome, even if no abnormal condition occurs in the testing process, elegant shutdown cannot be effectively proved to be effective, and further the effectiveness of shutdown testing can be ensured. In addition, target service data in the database is locked in advance, so that a plurality of service tests do not need to be carried out by adopting a plurality of application servers, and the test purpose can be achieved by only carrying out one service test by one application server.
Drawings
The above and other objects, features and advantages of the present disclosure will become more apparent from the following description of embodiments of the present disclosure with reference to the accompanying drawings, in which:
FIG. 1 is a schematic view showing an operational flow of a shutdown test method applied to the related art;
FIG. 2 schematically illustrates an exemplary system architecture to which the shutdown test method and apparatus of the present disclosure may be applied;
FIG. 3 schematically illustrates a flow chart of a shutdown testing method according to an embodiment of the present disclosure;
FIG. 4 schematically illustrates a flow diagram of a shutdown testing method according to another embodiment of the present disclosure;
FIG. 5 schematically illustrates an operational flow diagram of a shutdown testing method as applied to an embodiment of the present disclosure;
FIG. 6 schematically illustrates a flow diagram of application server and client performing downtime, in accordance with an embodiment of the disclosure;
FIG. 7 schematically illustrates a block diagram of a shutdown testing apparatus according to an embodiment of the present disclosure; and
FIG. 8 schematically illustrates a block diagram of an electronic device for implementing a shutdown test method in accordance with an embodiment of the disclosure.
Detailed Description
Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. It should be understood that the description is illustrative only and is not intended to limit the scope of the present disclosure. In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the disclosure. It may be evident, however, that one or more embodiments may be practiced without these specific details. Moreover, in the following description, descriptions of well-known structures and techniques are omitted so as to not unnecessarily obscure the concepts of the present disclosure.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. The terms "comprises," "comprising," and the like, as used herein, specify the presence of stated features, steps, operations, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, or components.
All terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. It is noted that the terms used herein should be interpreted as having a meaning that is consistent with the context of this specification and should not be interpreted in an idealized or overly formal sense.
Where a convention analogous to "at least one of A, B and C, etc." is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., "a system having at least one of A, B and C" would include but not be limited to systems that have a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.). Where a convention analogous to "A, B or at least one of C, etc." is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., "a system having at least one of A, B or C" would include but not be limited to systems that have a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.).
The shutdown test method provided by the embodiment of the disclosure is executed on the background that a simple and rough server stopping is not allowed in the version updating process, and the shutdown needs to be tested for the effectiveness of the shutdown because the shutdown needs to ensure that the service operation being executed is not affected.
The application shutdown is divided into a forced shutdown and an elegant shutdown. Forced shutdown refers to forced shutdown of a process by means of a kill-9 process number or the like, and in such a stopping manner, at the moment of stopping, business logic being processed in an application is interrupted, and related cleaning is not triggered. Compared with the mode of forcibly turning off the process, the more elegant mode is to enable the application process to actively stop after waiting for the in-transit transaction to return, and besides ensuring the correct execution of the in-transit transaction, the elegant shutdown also comprises the correct execution of user-defined shutdown operations such as data cleaning, resource recovery, connection release and the like. The general elegant shutdown mode is to give a certain shutdown time, and the forced shutdown is carried out if the application program does not normally exit within the overtime time. Embodiments of the present disclosure are tested for the effectiveness of graceful shutdown.
FIG. 1 schematically illustrates a flow diagram of a shutdown testing method.
As shown in fig. 1, when the shutdown test is executed, a blind pressure test is performed in a coverage service scenario when a plurality of servers need to perform load balancing at F5, and if there is no failure scenario in the pressure test process, a graceful shutdown is considered to be effective. The specific method comprises the following steps:
sending a service request through a pressure test server;
f5 load balancing device transmits service request to application server;
the application server executes the service request;
performing an elegant shutdown during the initiation of the pressure test;
the database (server) executes the SQL command sent by the application server and returns the SQL result to the application server;
and the application server returns a service request result to the stress test server.
In the process of implementing the concept of the present disclosure, it is found that the above technical solutions have at least the following problems, and the test method usually performs blind test by using multiple servers, and because it is not possible to ensure whether there is an on-the-way transaction in the test process, even if there is no abnormal occurrence in the test process, it is still not possible to effectively prove that the graceful shutdown is effective, because there is a possibility that there is no on-the-way transaction in the shutdown process, and in such a case, the test result is abnormal, but it is not possible to prove that the graceful shutdown is effective.
Therefore, the embodiment of the disclosure provides a shutdown test method, which locks target service data in a database before testing, ensures that there is an on-the-way transaction in the test process, and can ensure the effectiveness of a shutdown test.
It should be noted that the shutdown testing method and apparatus provided by the present disclosure may be used in the fields of cloud computing and finance, and may also be used in any field other than the financial field.
FIG. 2 schematically illustrates an exemplary system architecture to which the shutdown test method and apparatus of the present disclosure may be applied. It should be noted that fig. 2 is only an example of a system architecture to which the embodiments of the present disclosure may be applied to help those skilled in the art understand the technical content of the present disclosure, and does not mean that the embodiments of the present disclosure may not be applied to other devices, systems, environments or scenarios.
As shown in fig. 2, the system architecture 200 according to this embodiment may include terminal devices 202, 203, a network 204 and application server 205, database server 206. The network 204 serves as a medium for providing communication links between the terminal devices 202, 203 and the application server 205, database server 206. Network 204 may include various connection types, such as wired and/or wireless communication links, and so forth.
The user may use the terminal device 202, 203 to interact with the application server 205, the database server 206 via the network 204 to receive or send messages, etc., as well as between the application server 205 and the database server 206. The terminal devices 202, 203 may have installed thereon various client applications, such as a business operations platform application, a database management tool application, and the like (by way of example only).
The terminal devices 202, 203 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The application server 205 may be a server providing various services, such as a background management server (for example only) providing support for websites browsed by users using the terminal devices 202, 203. The background management server may analyze and perform other processing on the received data such as the user request, and feed back a processing result (e.g., a webpage, information, or data obtained or generated according to the user request) to the terminal device.
It should be noted that the shutdown test method provided by the embodiment of the present disclosure may be generally executed by the application server 205. The shutdown test apparatus provided by the embodiment of the present disclosure may be generally disposed in the application server 205.
The shutdown test method provided by the embodiment of the present disclosure may also be performed by other servers or server clusters different from the application server 205, or the database server 206. Accordingly, the shutdown test apparatus provided by the embodiment of the present disclosure may also be disposed in a server or a server cluster different from the application server 205 and capable of communicating with the terminal devices 202, and 203 and/or the application server 205 and the database server 206. The shutdown test device provided by the embodiment of the present disclosure may also be disposed in the terminal device 202, or 203, or in another terminal device different from the terminal device 202, or 203.
For example, a service request may be sent to the application server 205 or cluster of application servers through a stress test server different from the application server 205, and an instruction may be sent to the database server 206 or cluster of database servers through the stress test server; executing the service request by the application server 205 or the cluster of application servers; the database server 206 or the database server cluster executes the command sent by the application server 205 or the application server cluster to the database server, returns the result to the application server 205 or the application server cluster, and the database server 206 or the database server cluster executes corresponding operation in response to the instruction sent by the stress test server; and after receiving the returned result of the database server 206 or the database server cluster, the application server 205 or the application server cluster returns a service request result to the stress test server.
It should be understood that the number of terminal devices, networks, and servers in fig. 2 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
One aspect of the present disclosure provides a shutdown testing method, and fig. 3 schematically illustrates a flow chart of the shutdown testing method according to an embodiment of the present disclosure.
As shown in fig. 3, the method includes operations S301 to S304.
In operation S301, target service data in the database is locked, where the target service data is data that needs to be accessed when testing a service, and specifically may be a database table or a specific record in the database that needs to be accessed by the testing service determined in advance before the test, for example, the testing service is a transfer transaction of a banking service, and the target service data in the locked database is a transaction account and account initial balance information.
Specifically, in the operation, the method for locking the target service data in the database is as follows; and sending a lock instruction to the database so that the database responds to the lock instruction to execute the lock operation on the target service data. In the embodiment of the present disclosure, a lock instruction may be sent to the database through the functional test client, for example: the table or record corresponding to the test service can be locked by executing the SQL statement using the client tool mysql. After locking, the lock waiting overtime time can be checked, and set, and the lock waiting overtime time can be set according to the experience time length required by the actual test service, so that the shutdown test has enough time to ensure the test to be completed.
In operation S302, a test service request is sent to the application server, so that when the application server responds to the test service request, a shutdown test is performed based on the target service data. Specifically, a transfer service request can be sent to the application server through the function testing client, for example, by using a banking system tool, so that the application server in the background can respond to the transfer service request to execute relevant operations. Based on the transfer service request, the database executes an SQL command sent by the application server and returns an SQL result to the application server; and in the process, the application server executes the shutdown test, executes the shutdown operation and disconnects the connection with the functional test client during the pressure test initiation period, namely after the test service enters the waiting state.
In operation S303, a test result returned after the shutdown test is performed by the application server is acquired. In the process of executing the operation, the application server returns a service request result (such as a transfer transaction execution result for a certain account number) to the function test client based on the operation responding to the test service request (such as a transfer service request).
In operation S304, the validity of the shutdown test is determined according to the test result. Taking a test service as an example of a transfer transaction, target service data in a database is locked as a transaction account and account initial balance information in advance, after the test is finished, an application server returns a service request result to a function test client as the existing balance of the account, whether the existing balance of the account is correct or not is calculated and determined according to the account initial balance and a transfer amount, if the existing balance of the account is correct, a test shutdown test is effective, and if not, the test shutdown test is ineffective.
According to the shutdown test method disclosed by the embodiment of the disclosure, target service data in the database is locked in advance before testing, and on-the-way transaction in the test process is ensured, so that the technical problem that on-the-way transaction in the test process cannot be ensured due to blind test adopted in the prior art is at least partially overcome, even if no abnormal condition occurs in the test process, elegant shutdown can not be effectively proved, and further the effectiveness of shutdown test can be ensured. In addition, target service data in the database is locked in advance, so that a plurality of service tests do not need to be carried out by adopting a plurality of application servers, and the test purpose can be achieved by only carrying out one service test by one application server, so that the overall architecture is cut, the overall architecture of the test system is simplified, F5 load balance and a plurality of application servers are not used, the test cost is reduced, and the labor and time costs are saved.
FIG. 4 schematically shows a flow chart of a shutdown testing method according to another embodiment of the present disclosure, according to an embodiment of the present disclosure. As shown in fig. 4, the method includes operations S401 to S405. The shutdown test method in this embodiment is substantially the same as the shutdown test method shown in the embodiment of fig. 3, except that after the test service request is sent to the application server, operation S403 is added to unlock the target service data in the database. Here, only operation S403 is described in detail, and S401, S402, S404, and S405 are the same as operations S301 to S304 shown in fig. 3, and are not described again here.
Specifically, in operation S403, the target business data in the database is unlocked. After the locking operation is performed by the operation of S401, in order to enable the target service data in the database to be normally accessed and operated, the target service data in the database is unlocked after the test service request is sent to the application server. The specific operation of the target service data in the unlocking database is as follows: and sending an unlocking instruction to the database so that the database responds to the unlocking instruction to execute unlocking operation on the target service data. For example: the SQL statement is executed by using a client tool mysql, an unlocking instruction is sent to the database, so that the database responds to the unlocking instruction to execute unlocking operation on target service data to unlock a table or record corresponding to the test service in the database, and particularly, a commit or rollback command is executed to release lock resources.
To further illustrate the shutdown test method, fig. 5 is a schematic operation flow chart of the shutdown test method applied to the embodiment of the disclosure, and the following description is made in detail with reference to an example:
(1) an application server to be tested and a database are prepared in advance, and meanwhile, downstream servers related to corresponding business processing are also matched, installed and prepared. The test system simplifies the whole architecture of the test system, load balancing and a plurality of application servers are not used, and only one application server is needed to meet the test requirement.
(2) Taking the test service as a transfer transaction of banking service as an example, the functional test client executes SQL statement to lock a table or record corresponding to the test service by using a client tool mysql, and target service data in a locked database is a transaction account and account initial balance information. The specific operation is as follows:
firstly, logging in a database to execute SQL statements: show variables like% autocommit%'; to check the current database autocommit status (i.e. whether it is an auto-commit status), and if not 0, cancel the autocommit (i.e. cancel the auto-commit); the SQL statement needs to be executed: autocommit @ @ 0;
and then executing the following SQL statement to lock the target business data: select from _ cluster, vtm _ event _ log _ type 17and id 1450for update;
then, looking up the lock waiting timeout, wherein the specific executed SQL statement is as follows: window global variables like 'innodb _ lock _ wait _ timeout'; and setting timeout waiting time with the unit of second, wherein the specific executed SQL statement is as follows: set inbodb _ lock _ wait _ timeout 120. According to the embodiment of the disclosure, the lock waiting timeout time can be set according to the experience time length required by the actual test service, so that the shutdown test has enough time to ensure the test is completed.
(3) And sending a transfer service request to the application server by using a banking service system tool so that the background application server can respond to the transfer service request to execute relevant operations. Based on the transfer service request, the database executes an SQL command sent by the application server and returns an SQL result to the application server, namely data related to the transfer transaction, such as the balance of an initial account number, the existing balance of the account number and the like, is submitted to the application server. And in the process, the application server executes the shutdown test, executes the shutdown operation and disconnects the connection with the functional test client during the pressure test initiation period, namely after the test service enters the waiting state.
Before the database executes an SQL command sent by the application server and the application server returns an SQL result, the functional test client sends an unlocking command to the database so that the database responds to the unlocking command to execute unlocking operation on target service data, specifically, a commit or rollback command is executed to release a lock resource, namely, an account number related to the test transfer service in the database is released so that other users can perform operations such as transfer transaction on the account number.
(4) And finally, based on the operation of responding the test service request, after the test is finished, the application server returns a service request result to the function test client as the current balance of the account, and calculates and determines whether the current balance of the account is correct or not according to the initial balance of the account and the transfer amount, if the current balance of the account is correct, the test halt test is effective, and if not, the test halt test is ineffective.
According to an embodiment of the present disclosure, in the shutdown test process, the performing a shutdown test based on the target service data includes a client shutdown and a server shutdown, where the client shutdown includes:
receiving a shutdown notification sent by an application server;
and responding to the shutdown notification, and after waiting for first preset time, disconnecting the connection with the application server, wherein the first preset time is used for acquiring target service data from the database and returning a test result to the client when the application server responds to the test service request.
According to an embodiment of the present disclosure, the server shutdown includes: after the application server sends the shutdown notification, the application server disconnects the connection with the client after waiting for a second preset time, wherein the second preset time comprises the pushing delay time of the shutdown notification and a third preset time, and the third preset time is used for acquiring target service data from the database and returning a test result to the client when the application server responds to the test service request.
In the operation flow of the shutdown test method applied to the above-described embodiment of the present disclosure, the shutdown operation is performed. Fig. 6 schematically shows a flowchart of performing shutdown by an application server and a client according to an embodiment of the present disclosure, as shown in fig. 6:
in the shutdown test process, the performing of the shutdown test based on the target service data includes shutdown of the client and shutdown of the server.
(1) The server shutdown comprises:
the application server sends a halt notice to the client through the registration center, cancels the service registration information in the registration center and closes the connection of the registration center;
after sending the shutdown notification, the application server waits for t, which is a period of time for the registry to push the shutdown notification, and waits for the client to actively disconnect (if the client has disconnected at this time, there is no longer the waiting time).
And the application server waits for another time t again, and waits for the completion of the execution of the task in the thread pool, namely the waiting time is used for acquiring the target service data from the database and returning the test result to the client when the application server responds to the test service request.
The above-mentioned downtime t defaults to 10s, and the application server downtime process may wait for a period of two t. Before the application server closes the thread pool, whether an uncompleted task exists in the thread is judged, if yes, the task is waited to be completed, and the waiting maximum time is t.
The application server disconnects the connection with the client, including closing the monitoring server and closing the connection of the client which is not closed yet.
Then, the application server cleans the java bean objects related to the service (namely cleaning the memory).
(2) The client shutdown comprises the following steps:
receiving a shutdown notification sent by an application server;
unsubscribe (i.e., close the connection to the registry); after the client disconnects the registration center, the temporary node of the client on the registration center is offline and is logged off to be monitored by the node on the registration center;
and responding to the shutdown notification, after waiting for a time t, disconnecting the application server and cleaning the cache, wherein the waiting time is used for acquiring target service data from the database and returning a test result to the client when the application server responds to the test service request, namely waiting for the completion of the execution of the in-transit service.
According to the embodiment of the disclosure, the flow isolation between the client and the application server is realized through the client shutdown and the server shutdown. And the client receives the shutdown notification, the provider flag bit is read only, and the subsequent request is not loaded to the machine any more, so that the flow isolation is realized. Or after the service of the application server is logged off from the registration center, the registration center informs the client that the service is offline, and the client removes the service from the cache. The flow isolation can avoid new service allocation in the shutdown process, and if no flow isolation exists, the overall shutdown time can be too long or the service execution fails. In the process of stopping the client and the server, the client and the server are set with waiting time before disconnecting the client and the server from each other, and the waiting time is used for ensuring the correct execution of the on-the-way service in order to finish the execution of the on-the-way service, thereby improving the stability of a service system.
It should be noted that, unless explicitly stated that there is an execution sequence between different operations or there is an execution sequence between different operations in technical implementation, the execution sequence between multiple operations may not be sequential, or multiple operations may be executed simultaneously in the flowchart in this disclosure.
Another aspect of the present disclosure provides a shutdown test apparatus, and FIG. 7 schematically illustrates a block diagram of a shutdown test apparatus 700 according to an embodiment of the present disclosure, and as shown in FIG. 7, the shutdown test apparatus 700 includes a locking module 710, a sending module 720, an obtaining module 730, and a determining module 740. Wherein the content of the first and second substances,
a locking module 710, configured to lock target service data in a database, where the target service data is data that needs to be accessed when testing a service;
a sending module 720, configured to send a test service request to the application server, so that when the application server responds to the test service request, a shutdown test is performed based on the target service data;
an obtaining module 730, configured to obtain a test result returned after the shutdown test is performed by the application server; and
a determining module 740 configured to determine the effectiveness of the shutdown test according to the test result.
According to the embodiment of the disclosure, the locking module 710 of the shutdown testing apparatus 700 locks the target service data in the database in advance before testing, and ensures that there is an on-the-way transaction in the testing process, so that the technical problem that the on-the-way transaction in the testing process cannot be ensured due to blind testing in the prior art, and even if there is no abnormal occurrence in the testing process, the elegant shutdown cannot be effectively proved, and further the effectiveness of the shutdown testing can be ensured. In addition, target service data in the database is locked in advance, so that a plurality of service tests do not need to be carried out by adopting a plurality of servers, and the test purpose can be achieved only by carrying out one service test by one server, so that the overall architecture of the test system is simplified, the load balance and a plurality of application servers are not used any more, the test cost is reduced, and the labor and time costs are saved.
According to an embodiment of the present disclosure, in the shutdown test apparatus 700, the locking the target service data in the database includes: and sending a lock instruction to the database so that the database executes lock operation on the target service data based on the lock instruction when responding to the lock instruction.
According to an embodiment of the present disclosure, the shutdown testing apparatus 700 further includes: the unlocking module is used for unlocking the target service data in the database after the application server executes the shutdown test, and specifically comprises the following steps: and sending an unlocking instruction to the database so that the database executes unlocking operation on the target service data based on the unlocking instruction when responding to the unlocking instruction.
According to an embodiment of the present disclosure, in the shutdown test apparatus 700, the executing a shutdown test based on the target service data includes:
receiving a shutdown notification sent by an application server;
and responding to the shutdown notification, and after waiting for first preset time, disconnecting the application server, wherein the first preset time is used for the application server to respond to the test service request, acquire target service data from the database and return a test result to the client.
According to the embodiment of the disclosure, after the shutdown notification sent by the application server is received, the application server disconnects the connection with the client after waiting for the second preset time, wherein the second preset time comprises the push delay time of the shutdown notification and the third preset time, and the third preset time is used for the application server to respond to the test service request, acquire the target service data from the database and return the test result to the client.
Any number of modules, sub-modules, units, sub-units, or at least part of the functionality of any number thereof according to embodiments of the present disclosure may be implemented in one module. Any one or more of the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be implemented by being split into a plurality of modules. Any one or more of the modules, sub-modules, units, sub-units according to embodiments of the present disclosure may be implemented at least in part as a hardware circuit, such as a Field Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a system on a chip, a system on a substrate, a system on a package, an Application Specific Integrated Circuit (ASIC), or may be implemented in any other reasonable manner of hardware or firmware by integrating or packaging a circuit, or in any one of or a suitable combination of software, hardware, and firmware implementations. Alternatively, one or more of the modules, sub-modules, units, sub-units according to embodiments of the disclosure may be at least partially implemented as a computer program module, which when executed may perform the corresponding functions.
For example, any number of the locking module 710, the sending module 720, the obtaining module 730, and the determining module 740 may be combined and implemented in one module/unit/sub-unit, or any one of the modules/units/sub-units may be split into multiple modules/units/sub-units. Alternatively, at least part of the functionality of one or more of these modules/units/sub-units may be combined with at least part of the functionality of other modules/units/sub-units and implemented in one module/unit/sub-unit. According to an embodiment of the present disclosure, at least one of the locking module 710, the sending module 720, the obtaining module 730, and the determining module 740 may be implemented at least partially as a hardware circuit, such as a Field Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a system on a chip, a system on a substrate, a system on a package, an Application Specific Integrated Circuit (ASIC), or may be implemented in hardware or firmware in any other reasonable manner of integrating or packaging a circuit, or in any one of three implementations of software, hardware, and firmware, or in any suitable combination of any of them. Alternatively, at least one of the locking module 710, the sending module 720, the obtaining module 730, and the determining module 740 may be at least partially implemented as a computer program module that, when executed, may perform corresponding functions.
Another aspect of the present disclosure provides an electronic device including: one or more processors; memory to store one or more instructions that, when executed by the one or more processors, cause the one or more processors to implement a stall testing method as described above.
The electronic device shown in fig. 8 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 8, an electronic device 800 according to an embodiment of the present disclosure includes a processor 801 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)802 or a program loaded from a storage section 808 into a Random Access Memory (RAM) 803. The processor 801 may include, for example, a general purpose microprocessor (e.g., a CPU), an instruction set processor and/or associated chipset, and/or a special purpose microprocessor (e.g., an Application Specific Integrated Circuit (ASIC)), among others. The processor 801 may also include onboard memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flows according to embodiments of the present disclosure.
In the RAM 803, various programs and data necessary for the operation of the electronic apparatus 800 are stored. The processor 801, the ROM802, and the RAM 803 are connected to each other by a bus 804. The processor 801 performs various operations of the method flows according to the embodiments of the present disclosure by executing programs in the ROM802 and/or RAM 803. Note that the programs may also be stored in one or more memories other than the ROM802 and RAM 803. The processor 801 may also perform various operations of method flows according to embodiments of the present disclosure by executing programs stored in the one or more memories.
Electronic device 800 may also include input/output (I/O) interface 805, input/output (I/O) interface 805 also connected to bus 804, according to an embodiment of the present disclosure. The system 800 may also include one or more of the following components connected to the I/O interface 805: an input portion 806 including a keyboard, a mouse, and the like; an output section 807 including a signal such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage portion 808 including a hard disk and the like; and a communication section 809 including a network interface card such as a LAN card, a modem, or the like. The communication section 809 performs communication processing via a network such as the internet. A drive 810 is also connected to the I/O interface 808 as needed. A removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 810 as necessary, so that a computer program read out therefrom is mounted on the storage section 808 as necessary.
According to embodiments of the present disclosure, method flows according to embodiments of the present disclosure may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable storage medium, the computer program containing program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication section 809 and/or installed from the removable medium 811. The computer program, when executed by the processor 801, performs the above-described functions defined in the system of the embodiments of the present disclosure. The systems, devices, apparatuses, modules, units, etc. described above may be implemented by computer program modules according to embodiments of the present disclosure.
The present disclosure also provides a computer-readable storage medium, which may be contained in the apparatus/device/system described in the above embodiments; or may exist separately and not be assembled into the device/apparatus/system. The computer-readable storage medium carries one or more programs which, when executed, implement the method according to an embodiment of the disclosure.
According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium. Examples may include, but are not limited to: a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
For example, according to embodiments of the present disclosure, a computer-readable storage medium may include the ROM802 and/or RAM 803 described above and/or one or more memories other than the ROM802 and RAM 803.
Embodiments of the present disclosure also include a computer program product comprising a computer program containing program code for performing the method provided by the embodiments of the present disclosure, when the computer program product is run on an electronic device, the program code being adapted to cause the electronic device to carry out the shutdown test method provided by the embodiments of the present disclosure.
The computer program, when executed by the processor 801, performs the above-described functions defined in the system/apparatus of the embodiments of the present disclosure. The systems, apparatuses, modules, units, etc. described above may be implemented by computer program modules according to embodiments of the present disclosure.
In one embodiment, the computer program may be hosted on a tangible storage medium such as an optical storage device, a magnetic storage device, or the like. In another embodiment, the computer program may also be transmitted in the form of a signal on a network medium, distributed, downloaded and installed via communication section 809, and/or installed from removable media 811. The computer program containing program code may be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the foregoing.
In accordance with embodiments of the present disclosure, program code for executing computer programs provided by embodiments of the present disclosure may be written in any combination of one or more programming languages, and in particular, these computer programs may be implemented using high level procedural and/or object oriented programming languages, and/or assembly/machine languages. The programming language includes, but is not limited to, programming languages such as Java, C + +, python, the "C" language, or the like. The program code may execute entirely on the user computing device, partly on the user device, partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., through the internet using an internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. Those skilled in the art will appreciate that various combinations and/or combinations of features recited in the various embodiments and/or claims of the present disclosure can be made, even if such combinations or combinations are not expressly recited in the present disclosure. In particular, various combinations and/or combinations of the features recited in the various embodiments and/or claims of the present disclosure may be made without departing from the spirit or teaching of the present disclosure. All such combinations and/or associations are within the scope of the present disclosure.
The embodiments of the present disclosure have been described above. However, these examples are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although the embodiments are described separately above, this does not mean that the measures in the embodiments cannot be used in advantageous combination. The scope of the disclosure is defined by the appended claims and equivalents thereof. Various alternatives and modifications can be devised by those skilled in the art without departing from the scope of the present disclosure, and such alternatives and modifications are intended to be within the scope of the present disclosure.

Claims (10)

1. A shutdown testing method comprising:
target service data in a database is locked, wherein the target service data are data which need to be accessed when a service is tested;
sending a test service request to an application server so that the application server executes a shutdown test based on the target service data when responding to the test service request;
obtaining a test result returned after the application server executes the shutdown test; and
and determining the effectiveness of the shutdown test according to the test result.
2. The testing method of claim 1, the locking the target business data in the database comprising:
and sending a lock instruction to a database so that the database responds to the lock instruction to execute lock operation on the target service data.
3. The testing method of claim 1, further comprising:
and after the application server executes the shutdown test, unlocking the target service data in the database.
4. The testing method of claim 3, the unlocking target business data in the database comprising:
and sending an unlocking instruction to a database so that the database responds to the unlocking instruction to execute unlocking operation on the target service data.
5. The testing method of claim 1, performing a shutdown test based on the target traffic data comprising:
receiving a shutdown notification sent by the application server;
and responding to the shutdown notification, after waiting for first preset time, disconnecting the connection with the application server, wherein the first preset time is used for acquiring the target service data from the database and returning the test result to the client when the application server responds to the test service request.
6. The testing method of claim 5, after receiving a shutdown notification sent by the application server, disconnecting the application server from the client after waiting for a second preset time, where the second preset time includes a push delay time of the shutdown notification and a third preset time, and the third preset time is used for acquiring the target service data from the database and returning the testing result to the client when the application server responds to the testing service request.
7. A shutdown test apparatus comprising:
the system comprises a locking module, a storage module and a processing module, wherein the locking module is used for locking target service data in a database, and the target service data is data which needs to be accessed when testing services;
the sending module is used for sending a test service request to the application server so as to execute a shutdown test based on the target service data when the application server responds to the test service request;
the acquisition module is used for acquiring a test result returned after the application server executes the shutdown test; and
and the determining module is used for determining the effectiveness of the shutdown test according to the test result.
8. An electronic device, comprising:
one or more processors;
a memory to store one or more instructions that,
wherein the one or more instructions, when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-6.
9. A computer readable storage medium having stored thereon executable instructions which, when executed by a processor, cause the processor to carry out the method of any one of claims 1 to 6.
10. A computer program product comprising computer executable instructions for implementing the method of any one of claims 1 to 6 when executed.
CN202110210407.7A 2021-02-25 2021-02-25 Shutdown test method and device, electronic equipment and computer readable storage medium Active CN112882883B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110210407.7A CN112882883B (en) 2021-02-25 2021-02-25 Shutdown test method and device, electronic equipment and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110210407.7A CN112882883B (en) 2021-02-25 2021-02-25 Shutdown test method and device, electronic equipment and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN112882883A true CN112882883A (en) 2021-06-01
CN112882883B CN112882883B (en) 2024-06-21

Family

ID=76054473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110210407.7A Active CN112882883B (en) 2021-02-25 2021-02-25 Shutdown test method and device, electronic equipment and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN112882883B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118646A (en) * 2022-06-29 2022-09-27 苏州浪潮智能科技有限公司 Data interaction method and device for switch test system and electronic equipment
CN115378857A (en) * 2022-08-17 2022-11-22 中国银行股份有限公司 Test method and device for asynchronous long-hanging distributed architecture

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102308281A (en) * 2011-07-21 2012-01-04 华为技术有限公司 Method and system for conducting dynamic upgrading on chip, and substrate management controller
CN109165168A (en) * 2018-09-14 2019-01-08 杭州云创共享网络科技有限公司 A kind of method for testing pressure, device, equipment and medium
CN110380936A (en) * 2019-07-23 2019-10-25 中国工商银行股份有限公司 Test method and device
CN111405061A (en) * 2020-03-31 2020-07-10 中国工商银行股份有限公司 Micro-service shutdown method based on Dubbo frame and server
CN111444073A (en) * 2020-03-26 2020-07-24 中国信息通信研究院 Method, device and system for testing performance of financial database
CN111459798A (en) * 2020-03-03 2020-07-28 深圳壹账通智能科技有限公司 Test method, test device, test medium, and electronic apparatus
CN112115118A (en) * 2020-08-20 2020-12-22 北京健康之家科技有限公司 Database pressure measurement optimization method and device, storage medium and electronic equipment
CN112363932A (en) * 2020-11-11 2021-02-12 网易(杭州)网络有限公司 Method and device for testing business object to be tested and electronic device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102308281A (en) * 2011-07-21 2012-01-04 华为技术有限公司 Method and system for conducting dynamic upgrading on chip, and substrate management controller
CN109165168A (en) * 2018-09-14 2019-01-08 杭州云创共享网络科技有限公司 A kind of method for testing pressure, device, equipment and medium
CN110380936A (en) * 2019-07-23 2019-10-25 中国工商银行股份有限公司 Test method and device
CN111459798A (en) * 2020-03-03 2020-07-28 深圳壹账通智能科技有限公司 Test method, test device, test medium, and electronic apparatus
CN111444073A (en) * 2020-03-26 2020-07-24 中国信息通信研究院 Method, device and system for testing performance of financial database
CN111405061A (en) * 2020-03-31 2020-07-10 中国工商银行股份有限公司 Micro-service shutdown method based on Dubbo frame and server
CN112115118A (en) * 2020-08-20 2020-12-22 北京健康之家科技有限公司 Database pressure measurement optimization method and device, storage medium and electronic equipment
CN112363932A (en) * 2020-11-11 2021-02-12 网易(杭州)网络有限公司 Method and device for testing business object to be tested and electronic device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WINDYSAI: "微服务优雅停机研究", pages 1 - 5, Retrieved from the Internet <URL:https://www.cnblogs.com/windysai/p/14427656.html> *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118646A (en) * 2022-06-29 2022-09-27 苏州浪潮智能科技有限公司 Data interaction method and device for switch test system and electronic equipment
CN115118646B (en) * 2022-06-29 2023-07-14 苏州浪潮智能科技有限公司 Data interaction method and device for switch test system and electronic equipment
CN115378857A (en) * 2022-08-17 2022-11-22 中国银行股份有限公司 Test method and device for asynchronous long-hanging distributed architecture
CN115378857B (en) * 2022-08-17 2024-03-26 中国银行股份有限公司 Testing method and device for asynchronous long-hanging distributed architecture

Also Published As

Publication number Publication date
CN112882883B (en) 2024-06-21

Similar Documents

Publication Publication Date Title
US10885200B2 (en) Detecting security risks related to a software component
US9870282B2 (en) Systems and methods for providing service and support to computing devices with boot failure
US9697013B2 (en) Systems and methods for providing technical support and exporting diagnostic data
CN112882883B (en) Shutdown test method and device, electronic equipment and computer readable storage medium
CN114884796A (en) Fault processing method and device, electronic equipment and storage medium
CN113127201A (en) Fault application server isolation method and device, electronic equipment and storage medium
CN116166390A (en) Service processing method and device, electronic equipment and storage medium
US20170220624A1 (en) Transaction processor
US20180246778A1 (en) Utilizing an error prediction and avoidance component for a transaction processing system
CN114090113B (en) Method, device, equipment and storage medium for dynamically loading data source processing plug-in
CN114760233A (en) Service processing method and device, electronic equipment and storage medium
US9032014B2 (en) Diagnostics agents for managed computing solutions hosted in adaptive environments
US9319274B1 (en) Method and system for dynamic provisioning using server dormant mode for virtual server dormancy
CN113485930B (en) Business process verification method, device, computer system and readable storage medium
US20230205657A1 (en) Techniques for automated service monitoring and remediation in a distributed computing system
US11200154B2 (en) Function modification for software application testing
CN112445549A (en) Operation and maintenance method, operation and maintenance device, electronic equipment and medium
CN116450461A (en) Method, device, equipment and medium for processing hard disk faults of storage cluster
US11711261B2 (en) Automated host management service
CN115080449A (en) Test method, device, equipment, medium and program product
CN114968552A (en) Cache allocation method, apparatus, device, storage medium and program product
CN114257496A (en) Self-isolation method and system for service node
CN113778798A (en) Server control method, server control device, electronic device, and storage medium
WO2016124102A1 (en) Service management method and the device
CN113127363A (en) Parameter adjusting method, parameter adjusting device, electronic device and readable storage medium

Legal Events

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