CN113342463B - Capacity adjustment method, device, equipment and medium of computer program module - Google Patents

Capacity adjustment method, device, equipment and medium of computer program module Download PDF

Info

Publication number
CN113342463B
CN113342463B CN202110669222.2A CN202110669222A CN113342463B CN 113342463 B CN113342463 B CN 113342463B CN 202110669222 A CN202110669222 A CN 202110669222A CN 113342463 B CN113342463 B CN 113342463B
Authority
CN
China
Prior art keywords
capacity
computer program
container
adjustment
program module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110669222.2A
Other languages
Chinese (zh)
Other versions
CN113342463A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202110669222.2A priority Critical patent/CN113342463B/en
Publication of CN113342463A publication Critical patent/CN113342463A/en
Application granted granted Critical
Publication of CN113342463B publication Critical patent/CN113342463B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The disclosure discloses a capacity adjustment method of a computer program module, relates to the field of computers, and particularly relates to the field of cloud computing. The specific implementation scheme is as follows: acquiring capacity states of a plurality of containers in a physical machine cluster, wherein each container is provided with a micro-service process; determining that a deployed micro-service process of the plurality of containers belongs to at least one container of the computer program module; generating a capacity adjustment trigger event for the computer program module based on the capacity status of the at least one container; and adjusting the number and/or capacity of the at least one container according to the capacity adjustment triggering event. The disclosure also discloses a capacity adjustment device of the computer program module, an electronic device and a storage medium.

Description

Capacity adjustment method, device, equipment and medium of computer program module
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to cloud computing technologies. More particularly, the present disclosure provides a capacity adjustment method, apparatus, electronic device, and storage medium of a computer program module.
Background
As cloud computing architecture technology in the computer industry evolves, the deployment of computer programs gradually goes from physical machines to deployment within virtual containers. The cloud computing architecture brings about a multiple level increase in the number of computer program modules, which presents a stability risk to the overall computer system due to the service capacity problem of the computer program modules.
Disclosure of Invention
The present disclosure provides a method, apparatus, device, and storage medium for capacity adjustment of computer program modules.
According to a first aspect, there is provided a method of capacity adjustment of a computer program module, the method comprising: acquiring capacity states of a plurality of containers in a physical machine cluster, wherein each container is provided with a micro-service process; determining that a deployed micro-service process of the plurality of containers belongs to at least one container of the computer program module; generating a capacity adjustment trigger event for the computer program module based on the capacity status of the at least one container; and adjusting the number and/or capacity of the at least one container according to the capacity adjustment triggering event.
According to a second aspect, there is provided a capacity adjustment device for a computer program module, the device comprising: the system comprises an acquisition module, a storage module and a storage module, wherein the acquisition module is used for acquiring capacity states of a plurality of containers in a physical machine cluster, and each container is provided with a micro-service process; a determining module for determining that a deployed micro-service process of the plurality of containers belongs to at least one container of the computer program modules; a generation module for generating a capacity adjustment trigger event for the computer program module based on the capacity status of the at least one container; and a first adjustment module for adjusting the number and/or capacity of the at least one container according to the capacity adjustment triggering event.
According to a third aspect, there is provided an electronic device comprising: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform a method provided in accordance with the present disclosure.
According to a fourth aspect, there is provided a non-transitory computer readable storage medium storing computer instructions for causing a computer to perform a method provided according to the present disclosure.
According to a fifth aspect, there is provided a computer program product comprising a computer program which, when executed by a processor, implements a method provided according to the present disclosure.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the disclosure, nor is it intended to be used to limit the scope of the disclosure. Other features of the present disclosure will become apparent from the following specification.
Drawings
The drawings are for a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
FIG. 1 is a schematic diagram of an exemplary system architecture to which a capacity adjustment method and apparatus of computer program modules may be applied, according to one embodiment of the present disclosure;
FIG. 2 is a flow chart of a method of capacity adjustment of computer program modules in accordance with one embodiment of the present disclosure;
FIG. 3 is a flow chart of a method of capacity adjustment of computer program modules in accordance with another embodiment of the present disclosure;
FIG. 4 is a system schematic diagram of a method of capacity adjustment of computer program modules in accordance with one embodiment of the present disclosure;
FIG. 5 is a flow chart of a method of capacity adjustment of computer program modules in accordance with another embodiment of the present disclosure;
FIG. 6 is a flow chart of a method of capacity adjustment of computer program modules in accordance with another embodiment of the present disclosure;
FIG. 7 is a block diagram of a capacity modulation device of computer program modules according to one embodiment of the present disclosure;
fig. 8 is a block diagram of an electronic device of a method of capacity adjustment of computer program modules according to one embodiment of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
As cloud-native architecture technology in the computer industry evolves, the deployment of computer programs gradually goes from physical machines to virtualized deployment. The service responsible personnel reforms the service program into a micro-service program, and packages the micro-service process of the service program into a virtual container for deployment, so that the creation and operation of the micro-service on the cloud become a mainstream deployment solution of the cloud service end program, and the micro-service technology is widely applied in the service. In the micro-servitization transformation of a complex system of business, a micro-service architecture brings multiple level increase in the number of computer program modules, and a small number of modules can be skillfully operated and maintained by manpower, so that a large number of modules can slowly sense the state of the modules, redundant resources are not actively released for a long time to cause waste, meanwhile, local hot spot module nodes bring capacity overuse hidden dangers, and the whole system brings stability risks.
At present, the cloud service generally adopts the following schemes aiming at the expansion and contraction technology of a computer program.
Index data are acquired through a monitoring system of the service, data acquisition is carried out on computer program service, real-time monitoring and service index data are obtained, a calculation scheme and rules of capacity expansion and capacity reduction are established, and the calculation scheme and rules directly act on a capacity expansion operation interface of the cloud scheduling system. However, the mode needs to use a set of monitoring system, the mode of acquiring the service index is single, and according to scattered rule schemes constructed by different module services, a plurality of independent different decision mechanisms are formed, and a unified expansion and contraction model and mechanism are not provided, so that high cost of manpower and resources is brought to subsequent maintenance iteration.
And considering the capacity expansion and the capacity reduction of the computer program application from the resource dimension of the cloud service, providing the realization of the capacity expansion and the capacity reduction of the external application at the virtual resource management scheduling layer, controlling the resources on the cloud service by using the backlog and the consumption speed of an external message queue, and supporting more service scenes by continuously expanding the support of an external capacity expansion and reduction component. From the perspective of a resource container, the resource layer function of the cloud service end can be provided, a service user is required to be expanded to realize external various computing components, external systems and resources such as a message queue are often relied on, details are exposed to service requirements, the cost for realizing a specific expansion and contraction scene is high, decision logic is seriously coupled with the service, and the large-scale expansion application of the service user is not facilitated.
The virtualized container general data where the computer program is located is used, the container resource consumption resource data is adopted, the container self-performance index is calculated and identified, and unified rules or pre-training models are adopted to conduct judgment and operation of expansion and contraction. The method can realize wide expansion and contraction standards, but can not realize expansion and contraction of fine-grained capacity well for some service characteristic application scenes, and can not meet the extreme expansion and contraction requirements of service customization.
FIG. 1 is a schematic diagram of an exemplary system architecture to which a capacity adjustment method and apparatus of computer program modules may be applied, according to one embodiment of the present disclosure. It should be noted that fig. 1 is only an example of a system architecture to which embodiments of the present disclosure may be applied to assist those skilled in the art in understanding the technical content of the present disclosure, but does not mean that embodiments of the present disclosure may not be used in other devices, systems, environments, or scenarios.
As shown in fig. 1, a system architecture 100 according to this embodiment may include a plurality of physical machines 101, a network 102, and a computing device 103. The number of physical machines 101 may be arbitrary, and for example, the plurality of physical machines 101 may be part of physical machines in the physical machine cluster or may be all physical machines constituting the physical machine cluster. Network 102 is the medium used to provide communication links between physical machines 101 and computing devices 103. Network 102 may include various connection types, such as wired and/or wireless communication links, and the like.
Physical machine 101 may be provided with one or more containers, each of which has a micro-service process deployed therein, and may be referred to as an instance, for example, a website for accessing a website may be used as an instance, and different instances may be deployed in respective containers. The computer program modules are formed by a set of instances for performing the same function, which may be distributed in containers in different physical machines 101. When the network traffic is relatively large, the number of instances constituting the computer program module is also relatively large, for example, ten thousand instances constituting the computer program module a may be distributed in containers in different physical machines 101.
For large computer systems, it is common for a large computer system to be comprised of hundreds or thousands of computer program modules. For example, computer program modules a, B … …, and so on. Aiming at the service capacity problem of each computer program module, a capacity adjustment method needs to be provided to realize the self-adaptive capacity expansion and contraction of the computer program module so as to promote the overall stability improvement of the complex computer system.
The capacity adjustment methods of computer program modules provided by the embodiments of the present disclosure may be generally performed by the computing device 103. Accordingly, the capacity adjustment means of the computer program modules provided by the embodiments of the present disclosure may be generally provided in the computing device 103. The capacity adjustment methods of computer program modules provided by the embodiments of the present disclosure may also be performed by a server or cluster of servers other than the computing device 103 and capable of communicating with the physical machine 101 and/or the computing device 103. Accordingly, the capacity adjustment means of the computer program modules provided by the embodiments of the present disclosure may also be provided in a server or a server cluster different from the computing device 103 and capable of communicating with the physical machine 101 and/or the computing device 103.
Fig. 2 is a flow chart of a method of capacity adjustment of computer program modules according to one embodiment of the present disclosure.
As shown in FIG. 2, the capacity adjustment method 200 of the computer program module may include operations S210-S240.
In operation S210, capacity states of a plurality of containers in a physical machine cluster are acquired.
For example, a physical machine cluster may be an infrastructure that provides services for a large computer system or cloud computing system. The cluster of physical machines includes a plurality of physical machines, each of which may be provided with one or more containers. A physical machine may allocate CPU resources and memory resources for each container within it, e.g., a physical machine may have 8000 cores CPU,512G memory in common, and may allocate 150 cores CPU and 25G memory for a container within it, which has resources of 150 cores CPU and 25G memory, which may be referred to as the capacity of the container. The physical machine may also allocate the same or different resources to other containers within it. Each container has deployed therein a micro-service process, which may be referred to as an instance, for example, a website for accessing a website may be used as an instance, and different instances may be deployed in respective containers.
A node acquisition device can be arranged in each physical machine, and the node acquisition device can acquire the capacity states of all containers in the physical machine. For example, the CPU usage and memory usage of each container for capacity states, and so on.
In operation S220, it is determined that the deployed micro service process of the plurality of containers belongs to at least one container of the computer program modules.
Large computer systems are made up of hundreds or thousands of computer program modules that are made up of a set of micro-service processes for performing the same functions, which may be distributed in containers in different physical machines. The deployed micro-service processes in the plurality of containers belong to at least one container of the computer program module and may be referred to as a container for the computer program module.
For example, among a plurality of containers in a physical machine cluster, there are 300 containers in which a micro-service process deployed belongs to a computer program module a, and the 300 containers are containers for the computer program module a, and the capacity states of the 300 containers can be summarized as a capacity state index set of the computer program module a. Likewise, at least one container for the computer program module B and a set of capacity status indicators for the computer program module B, etc. can also be obtained.
In operation S230, a capacity adjustment trigger event for the computer program module is generated according to the capacity state of the at least one container.
For example, for the computer program module a, the expansion and contraction requirement of the computer program module a may be determined according to the overall capacity state in the capacity state index set of the computer program module a and the preset target capacity state. For example, the overall capacity state in the set of capacity state indicators of the computer program module a may be obtained by integrating an average of CPU usage and an average of memory usage of at least one container. The preset target capacity state may be a desired CPU usage and memory usage (e.g., 50%). If the overall capacity state in the set of capacity state indicators for computer program module a is above the target capacity state and above 20%, then it may be determined that computer program module a has a capacity expansion requirement. If the overall capacity state in the set of capacity state indicators for computer program module a is above the target capacity state and below 10%, then it may be determined that computer program module a has a capacity reduction requirement. If the difference between the overall capacity state and the target capacity state in the set of capacity state indicators for computer program module a is less than 5%, it may be determined that computer program module a has no capacity expansion requirements.
For example, in the case that it is determined that the computer program module a has a capacity expansion requirement, the capacity to be adjusted may be calculated according to the difference between the overall capacity state in the capacity state index set of the computer program module a and the preset target capacity state.
Based on the expansion and contraction capacity requirement of the computer program module a and the size of the capacity to be adjusted, a capacity adjustment trigger event for the computer program module a may be generated. The capacity adjustment triggering event may include the ID of the computer program module a, the type of adjustment (expansion or contraction) and the size of the capacity that needs to be adjusted.
In operation S240, the number or capacity of the at least one container is adjusted according to the capacity adjustment trigger event.
For example, in response to a capacity adjustment triggering event for computer program module a, the adjustment of the capacity of computer program module a may be achieved by adjusting the number and/or size of at least one container. Adjusting the number of at least one container may be referred to as horizontal telescoping and adjusting the capacity of at least one container may be referred to as vertical telescoping.
According to the embodiment of the disclosure, the capacity adjustment triggering event for the computer program module is generated according to the capacity state of at least one container for the computer program module, and the capacity adjustment of the computer program module is performed based on event driving, so that the self-adaptive capacity expansion and contraction of the computer program module can be realized, and the stability of a computer system is improved.
Fig. 3 is a flow chart of a method of capacity adjustment of computer program modules according to another embodiment of the present disclosure.
As shown in FIG. 3, the method includes operations S310-S360.
In operation S310, it is determined whether the capacity state of at least one container satisfies a preset condition. If yes, then operation S320 is performed; if not, operation S330 is performed.
For example, a micro-service process deployed within at least one container belongs to computer program module a, and the capacity status of the at least one container is summarized as a set of capacity status indicators for the computer program module a. It may be determined whether the average value of the CPU usage rate and/or the average value of the memory usage rate in the capacity status index set is greater than a preset threshold (e.g., 60%), and if greater than the preset threshold, it indicates that the capacity status of the at least one container is in an emergency status, which may possibly bring about a capacity overload hidden danger. If the capacity state of the at least one container is not greater than the preset threshold value, the capacity state of the at least one container is in a healthy use state, and the potential risk of capacity overuse cannot be brought.
In operation S320, a capacity adjustment trigger event for the computer program module is generated in real time.
For example, in case the capacity state of at least one container satisfies a preset condition, it is indicated that the capacity state of the at least one container is in an emergency state. Therefore, the capacity state of the at least one container is calculated in real time, and a capacity adjustment triggering event aiming at the computer program module A is generated so as to trigger capacity adjustment in real time, and the hidden danger of capacity overuse is avoided.
In operation S330, a capacity state of at least one container is stored.
For example, in case the capacity state of at least one container does not meet the preset condition, it is indicated that the capacity state of the at least one container is in a healthy use state. Therefore, the real-time performance of the capacity adjustment for the computer program module a is not required, and the capacity state of at least one container may be stored, for example, in a database.
In operation S340, the capacity state of the stored at least one container is acquired at preset time intervals.
In operation S350, a capacity adjustment trigger event for the computer program module is generated according to the acquired capacity state of the at least one container.
For example, a set of capacity state indicators (i.e., a set of capacity states of at least one container) for computer program module a in the database is periodically (e.g., every 2 hours) acquired, and the expansion and contraction capacity requirements of computer program module a are calculated from the periodically acquired set of capacity state indicators to generate a capacity adjustment trigger event for computer program module a.
In operation S360, the number and/or capacity of the at least one container is adjusted according to the capacity adjustment trigger event.
For example, 100 containers are added for running a micro-service process of the computer program module a, or the capacity of 100 containers in at least one container is adjusted from 25GB to 50GB.
According to the embodiment of the disclosure, the capacity adjustment trigger event of the computer program module is generated in real time or periodically according to the capacity state of at least one container, so that the capacity expansion of the computer program module in the capacity overload emergency state can be responded quickly, the capacity overload risk is avoided, and the stability of a computer system is improved.
Fig. 4 is a system schematic diagram of a method of capacity adjustment of computer program modules according to one embodiment of the present disclosure.
As shown in fig. 4, the system 400 of the capacity adjustment method of the computer program modules includes a first acquisition module 410, a second acquisition module 420, a collection module 430, a storage module 440, a calculation module 450, an event yield module 460, a container control module 470, an auxiliary module 480, and an external trigger module 490.
The function of each module and the implementation principle of the capacity adjustment method of the computer program module are as follows.
The first collection sub-module 411 in the first collection module 410 may be a collection device disposed on each physical machine in the physical machine cluster, and may be configured to collect capacity status indicators of a plurality of containers in the physical machine, where the capacity status indicators may include a CPU usage rate, a memory usage rate, and so on. The first acquisition module 410 sends the acquired capacity status indicators to the collection module 430.
The second acquisition module 420 includes a monitoring sub-module 421 and a second acquisition sub-module 422, where the monitoring sub-module 421 is configured to monitor the application module and obtain indexes such as an application running duration. The second collecting sub-module 422 is used for obtaining the corresponding relation between the micro service process and the computer program module in each container in the physical machine. The monitoring sub-module 421 and the second collecting sub-module 422 respectively transmit the collected information to the collecting module 430.
The aggregation sub-module 431 in the collection module 430 is configured to sort, filter, and filter the capacity status indicators of the plurality of containers of the received physical machine cluster. For example, the capacity state indexes of the containers where the micro-service processes belonging to the same computer program module are located are gathered together, and data filtering, cleaning and other treatments are performed to obtain an index set for the computer program module. For each index set of computer program modules, different processing modes are adopted according to whether the overall capacity state in the index set meets preset conditions (for example, more than 60 percent, and the threshold values of different computer program modules can be adjusted). Specifically, for the computer program module that satisfies the preset condition, the real-time triggering sub-module 432 directly sends the index set of the computer program module to the computing module 450, so as to perform real-time triggering; for the computer program modules which do not meet the preset conditions, the persistence sub-module 433 is used for persistence processing and storing the index set of the computer program modules in the storage module 440.
The storage module 440 may include a plurality of database sub-modules 441, each database sub-module 441 being operable to store a set of capacity state indicators for different computer program modules.
The calculation module 450 may receive the index set for the computer program module sent by the collection module 430 in real time, or may periodically obtain the capacity state index set stored in the database sub-module 441. For a capacity state index set received in real time and a capacity state index set obtained periodically, whether the expansion and contraction capacity requirements exist in the corresponding computer program modules can be determined through calculation and analysis. For example, whether the expansion and contraction capacity requirement exists is determined according to the capacity state in the capacity state index set and a preset target state. The adjustment strategy is determined according to the expansion and contraction capacity requirement, and the adjustment strategy comprises an adjustment type (expansion or contraction capacity), an adjustment mode (horizontal expansion or vertical expansion and contraction), the number and/or the size of containers to be adjusted, and the like. A capacity adjustment trigger event is generated according to an adjustment policy, which may include an ID of a computer program module for which the capacity expansion event is intended, and information in the adjustment policy. The computing module 450 may generate capacity adjustment trigger events for a plurality of computer program modules and send the plurality of capacity adjustment trigger events to the event yield module 460.
The event generating module 460 is configured to distribute the received plurality of capacity adjustment triggering events to the message queue, perform the circulation and processing of the capacity adjustment triggering events, and issue the capacity adjustment triggering events meeting the capacity expansion policy condition to the container control module 470.
The container control module 470 may collect the issued capacity adjustment triggering events on the event bus, and the event scheduling sub-module 471 is configured to sort and weight the priority of the capacity adjustment triggering events, subscribe the event bus to change the capacity adjustment triggering events, perform corresponding capacity expansion and capacity contraction operations on the target computing program module in the event description, and finally implement capacity adjustment of the computer program module.
The auxiliary module 480 may include an auxiliary sub-module such as a metadata collection sub-module 481, an event booklet module 482, and an event audit sub-module that may obtain information in the capacity adjustment trigger event to meet different needs.
The external trigger module 490 may include a plurality of external application sub-modules 491 for generating capacity adjustment trigger events via external services.
According to the embodiment of the disclosure, the capacity adjustment triggering event for the computer program module is generated according to the capacity state of at least one container for the computer program module, and the capacity adjustment of the computer program module is performed based on event driving, so that the self-adaptive capacity expansion and contraction of the computer program module can be realized, and the stability of a computer system is improved.
Fig. 5 is a flow chart of a method of capacity adjustment of computer program modules according to another embodiment of the present disclosure.
The flow chart shown in fig. 5 is a flow of the capacity adjustment method described with the computer program modules as the point of view.
As shown in FIG. 5, operations 510-540 are included.
In operation S510, a capacity state of at least one container for the computer program module is collected.
For example, the at least one container is 300, and the micro services deployed in the 300 containers make up the computer program module a, then the 300 containers are at least one container for the computer program module a. The capacity state indexes such as the CPU utilization rate and the memory utilization rate of each container in the 300 containers can be acquired through the acquisition device in the physical machine where the 300 containers are located.
In operation S520, the capacity status of at least one container is summarized, filtered, and stored.
For example, the capacity status indexes of the 300 containers are summarized, and data required for expanding and contracting capacity is screened out, for example, data with abnormal capacity caused by faults of the containers are filtered out. If the finally obtained capacity status index is greater than the preset value (e.g., 60%), operation S530 is directly performed. Otherwise, the summarized capacity state index data is stored, for example, in a preset database, and operation S530 is performed by periodically acquiring data from the database.
In operation S530, a capacity adjustment trigger event for the computer program module is generated according to the capacity state of the at least one container.
For example, whether the computer program module a has a capacity expansion requirement may be determined according to a difference between an overall capacity state in the capacity state index set of the computer program module a and a preset target capacity state. In the case of determining that the computer program module a has a capacity expansion requirement, a capacity adjustment strategy may be further determined according to the difference, where the capacity adjustment strategy includes a size of a capacity to be adjusted, a capacity adjustment type (capacity expansion or contraction), and a capacity adjustment manner (horizontal expansion or vertical expansion). And generating a capacity adjustment event according to the capacity adjustment strategy, wherein the capacity adjustment event comprises the identification of the computer program module A and information in the capacity adjustment strategy.
In operation S540, the number or capacity of the at least one container is adjusted according to the capacity adjustment trigger event.
For example, in response to a capacity adjustment trigger event for computer program module a, it may be determined in which target physical machine or machines the 300 containers described above for computer program module a are deployed, respectively, and the target physical machine may be notified to increase (or decrease) the number of containers, or to increase (or decrease) the size of each container, according to policy information in the capacity adjustment trigger event.
It will be appreciated that in response to the adjustment of the capacity of the computer program module a in operation S540, when the capacity state of the at least one container after the capacity adjustment is collected in operation S510, an updated capacity state index is obtained.
According to the embodiment of the disclosure, compared with a method for expanding and shrinking the volume from the whole resource container, the method for expanding and shrinking the volume in a self-adaptive manner from the view angle of the computer program module can avoid the problem of limited application scenes caused by the fact that the self characteristics of the service where the computer program module is located are not considered.
Fig. 6 is a flow chart of a method of capacity adjustment of computer program modules according to another embodiment of the present disclosure.
As shown in FIG. 6, operations 610-640 are included.
In operation 610, a capacity adjustment period of the computer program module is set.
For example, the traffic of the computer program modules may exhibit a periodic law due to the traffic characteristics of the computer program modules themselves. For example, the computer program module A may be more traffic during weekdays and less traffic during holidays. The timed scaling period, i.e. the capacity adjustment period, of the computer program module a may be set.
For example, the capacity adjustment period of the computer program module a is set to start at five or eight points per week and end at six early points per week.
In operation 620, the number and capacity of the at least one container is saved as a first capacity state of the computer program module prior to a start time of the capacity adjustment period.
For example, the capacity state of the computer program module a currently running is saved as the first capacity state five or eight times a week before. For example, the saved first capacity state includes a number of currently enabled containers (e.g., 1 ten thousand containers), a resource size of the containers (e.g., a size of 25GB per container), and so forth.
In operation 630, the number and/or capacity of the at least one container is adjusted according to the preset second capacity state during the capacity adjustment period.
For example, the preset second capacity state is a maximum capacity state that is allowed to be reached. The number of containers allowed to open during the period from five to eight hours per week to six hours per week was 5 kilos, and the maximum capacity of each container was 50G. Then, according to this preset second capacity state, an adaptive adjustment of the container capacity and number can be made during the period from five to eight hours per week to six hours per week.
For example, during the period from five to eight hours per week to six hours per week, 5000 containers are opened, each container having a capacity of 25GB, which results in a low resource usage (e.g., 20%) per container, and the capacity reduction process may be adaptively performed to avoid resource waste, for example, the number of opened containers may be adjusted to 4000.
At operation 640, the capacity state of the computer program module is adjusted back to the first capacity state at the end of the capacity adjustment period.
For example, after the end of six early weekly events, the capacity state of computer program module a may be adjusted back to the first capacity state, as the flow of computer program module a may rise on weekdays. For example, the capacity status of the computer program module a is adjusted back to open 1 ten thousand containers, each container having a capacity of 25GB.
According to the embodiment of the disclosure, the timing expansion and contraction can be performed according to the service characteristics of the computer program module, so that the automatic expansion and contraction of the service scene can be realized, the expansion and contraction response speed is high, and the system resources can be saved.
Fig. 7 is a block diagram of a capacity adjustment device of computer program modules according to one embodiment of the present disclosure.
As shown in fig. 7, the capacity adjustment 700 of the computer program modules may include an acquisition module 701, a determination module 702, a generation module 703, and a first adjustment module 704.
The obtaining module 701 is configured to obtain capacity states of a plurality of containers in a physical machine cluster, where each container is deployed with a micro service process.
The determination module 702 is configured to determine that a deployed micro-service process of the plurality of containers belongs to at least one container of computer program modules.
The generating module 703 is configured to generate a capacity adjustment trigger event for the computer program module according to the capacity status of the at least one container.
The first adjustment module 704 is configured to adjust the number and/or capacity of the at least one container according to a capacity adjustment trigger event.
According to an embodiment of the present disclosure, the generation module 703 includes a demand determination unit, a policy determination unit, and an event generation unit.
The demand determination unit is configured to determine a capacity adjustment demand of the computer program module based on the capacity status of the at least one container.
The strategy determining unit is used for determining the capacity adjustment strategy of the computer program module according to the capacity adjustment requirement of the computer program module.
The event generating unit is used for generating a capacity adjustment triggering event according to the capacity adjustment strategy of the computer program module.
According to an embodiment of the present disclosure, the capacity adjustment trigger event includes at least one of an adjustment type, an adjustment amount, and an adjustment capacity.
According to an embodiment of the present disclosure, the generation module 703 includes a first generation unit, a storage unit, an acquisition unit, and a second generation unit.
The first generation unit is used for responding to the capacity state of at least one container to meet the preset condition and generating a capacity adjustment trigger event aiming at the computer program module in real time.
The storage unit is used for storing the capacity state of the at least one container in response to the capacity state of the at least one container not meeting a preset condition.
The acquisition unit is used for acquiring the capacity state of the at least one stored container according to a preset time interval.
And the second generation unit is used for generating a capacity adjustment trigger event aiming at the computer program module according to the acquired capacity state of the at least one container.
According to an embodiment of the present disclosure, the first adjustment module comprises a target determination unit and an adjustment unit.
The target determination unit is used for determining one or more target physical machines with at least one container deployed in the physical machine cluster.
The adjusting unit is used for adjusting the quantity and/or the capacity of at least one container through one or more target physical machines.
According to an embodiment of the present disclosure, the capacity adjustment 700 of the computer program module further comprises a setting module, a saving module, a second adjustment module and a third adjustment module.
The setting module is used for setting the capacity adjustment period of the computer program module.
The storage module is used for storing the quantity and the capacity of at least one container before the starting time of the capacity adjustment period as a first capacity state of the computer program module.
The second adjusting module is used for adjusting the quantity and/or the capacity of at least one container according to a preset second capacity state in the capacity adjusting period.
The third adjustment module is used for adjusting the capacity state of the computer program module back to the first capacity state at the end time of the capacity adjustment period.
According to embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
Fig. 8 illustrates a schematic block diagram of an example electronic device 800 that may be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 8, the apparatus 800 includes a computing unit 801 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM) 802 or a computer program loaded from a storage unit 808 into a Random Access Memory (RAM) 803. In the RAM 803, various programs and data required for the operation of the device 800 can also be stored. The computing unit 801, the ROM 802, and the RAM 803 are connected to each other by a bus 804. An input/output (I/O) interface 805 is also connected to the bus 804.
Various components in device 800 are connected to I/O interface 805, including: an input unit 806 such as a keyboard, mouse, etc.; an output unit 807 such as various types of displays, speakers, and the like; a storage unit 808, such as a magnetic disk, optical disk, etc.; and a communication unit 809, such as a network card, modem, wireless communication transceiver, or the like. The communication unit 809 allows the device 800 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
The computing unit 801 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 801 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 801 performs the various methods and processes described above, such as the capacity adjustment method of the computer program modules. For example, in some embodiments, the capacity adjustment method of the computer program module may be implemented as a computer software program, which is tangibly embodied on a machine-readable medium, such as the storage unit 808. In some embodiments, part or all of the computer program may be loaded and/or installed onto device 800 via ROM 802 and/or communication unit 809. When a computer program is loaded into the RAM 803 and executed by the computing unit 801, one or more steps of the capacity adjustment method of the computer program modules described above may be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform the capacity adjustment method of the computer program modules in any other suitable way (e.g. by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, 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), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and pointing device (e.g., a mouse or trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), and the internet.
The computer system may include a client and a server. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel or sequentially or in a different order, provided that the desired results of the technical solutions of the present disclosure are achieved, and are not limited herein.
The above detailed description should not be taken as limiting the scope of the present disclosure. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present disclosure are intended to be included within the scope of the present disclosure.

Claims (14)

1. A method of capacity adjustment of a computer program module, comprising:
acquiring capacity states of a plurality of containers in a physical machine cluster, wherein each container is provided with a micro-service process;
determining that a deployed micro-service process of the plurality of containers belongs to at least one container of the computer program modules;
generating a capacity adjustment trigger event for the computer program module based on the capacity status of the at least one container; and
adjusting the number and/or capacity of the at least one container according to the capacity adjustment triggering event;
the method further comprises the steps of:
setting a capacity adjustment period of the computer program module;
saving the number and capacity of the at least one container as a first capacity state of the computer program module prior to a start time of the capacity adjustment period;
Adjusting the quantity and/or the capacity of the at least one container according to a preset second capacity state in the capacity adjustment period; and
and at the end time of the capacity adjustment period, adjusting the capacity state of the computer program module back to the first capacity state.
2. The method of claim 1, wherein the generating the capacity adjustment trigger event for a computer program module comprises:
determining a capacity adjustment requirement of the computer program module according to the capacity state of the at least one container;
determining a capacity adjustment strategy of the computer program module according to the capacity adjustment requirement of the computer program module; and
and generating the capacity adjustment triggering event according to the capacity adjustment strategy of the computer program module.
3. The method of claim 2, wherein the capacity adjustment trigger event comprises at least one of an adjustment type, an adjustment quantity, and an adjustment capacity.
4. The method of claim 1, wherein the generating the capacity adjustment trigger event for a computer program module comprises:
and generating a capacity adjustment trigger event for the computer program module in real time in response to the capacity state of the at least one container meeting a preset condition.
5. The method of claim 4, wherein the generating the capacity adjustment trigger event for a computer program module further comprises:
storing the capacity state of the at least one container in response to the capacity state of the at least one container not meeting the preset condition;
acquiring the capacity state of at least one stored container according to a preset time interval; and
a capacity adjustment trigger event for the computer program module is generated based on the acquired capacity status of the at least one container.
6. The method of claim 1, wherein the adjusting the number and/or capacity of the at least one container according to the capacity adjustment trigger event comprises:
determining one or more target physical machines in the cluster of physical machines with the at least one container deployed; and
the number and/or capacity of the at least one container is adjusted by the one or more target physical machines.
7. A capacity adjustment device of a computer program module, comprising:
the system comprises an acquisition module, a storage module and a storage module, wherein the acquisition module is used for acquiring capacity states of a plurality of containers in a physical machine cluster, and each container is provided with a micro-service process;
A determining module for determining that a deployed micro-service process of the plurality of containers belongs to at least one container of the computer program modules;
a generation module for generating a capacity adjustment trigger event for the computer program module based on the capacity status of the at least one container; and
a first adjustment module for adjusting the number and/or capacity of the at least one container according to the capacity adjustment triggering event;
the apparatus further comprises:
a setting module for setting a capacity adjustment period of the computer program module;
a holding module for holding the number and capacity of the at least one container as a first capacity state of the computer program module prior to a start time of the capacity adjustment period;
a second adjustment module, configured to adjust the number and/or the capacity of the at least one container according to a preset second capacity state in the capacity adjustment period; and
and a third adjustment module, configured to adjust the capacity state of the computer program module back to the first capacity state at an end time of the capacity adjustment period.
8. The apparatus of claim 7, wherein the generating means comprises:
A demand determining unit for determining a capacity adjustment demand of the computer program module based on the capacity status of the at least one container;
a policy determining unit, configured to determine a capacity adjustment policy of the computer program module according to a capacity adjustment requirement of the computer program module; and
and the event generating unit is used for generating the capacity adjustment triggering event according to the capacity adjustment strategy of the computer program module.
9. The apparatus of claim 8, wherein the capacity adjustment trigger event comprises at least one of an adjustment type, an adjustment quantity, and an adjustment capacity.
10. The apparatus of claim 7, wherein the generating means comprises:
and the first generation unit is used for responding to the capacity state of the at least one container to meet the preset condition and generating a capacity adjustment trigger event aiming at the computer program module in real time.
11. The apparatus of claim 10, wherein the generating module further comprises:
a storage unit configured to store a capacity state of the at least one container in response to the capacity state of the at least one container not satisfying the preset condition;
An acquisition unit for acquiring the capacity state of the stored at least one container at preset time intervals; and
and the second generation unit is used for generating a capacity adjustment trigger event aiming at the computer program module according to the acquired capacity state of the at least one container.
12. The apparatus of claim 7, the first adjustment module comprising:
a target determining unit, configured to determine one or more target physical machines in the physical machine cluster, where the at least one container is deployed; and
an adjusting unit for adjusting the number and/or capacity of the at least one container by the one or more target physical machines.
13. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores instructions for execution by the at least one processor to enable the at least one processor to perform the method of any one of claims 1 to 6.
14. A non-transitory computer readable storage medium storing computer instructions for causing the computer to perform the method of any one of claims 1 to 6.
CN202110669222.2A 2021-06-16 2021-06-16 Capacity adjustment method, device, equipment and medium of computer program module Active CN113342463B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110669222.2A CN113342463B (en) 2021-06-16 2021-06-16 Capacity adjustment method, device, equipment and medium of computer program module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110669222.2A CN113342463B (en) 2021-06-16 2021-06-16 Capacity adjustment method, device, equipment and medium of computer program module

Publications (2)

Publication Number Publication Date
CN113342463A CN113342463A (en) 2021-09-03
CN113342463B true CN113342463B (en) 2024-01-09

Family

ID=77475766

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110669222.2A Active CN113342463B (en) 2021-06-16 2021-06-16 Capacity adjustment method, device, equipment and medium of computer program module

Country Status (1)

Country Link
CN (1) CN113342463B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829649B1 (en) * 2000-11-10 2004-12-07 International Business Machines Corporation Method an congestion control system to allocate bandwidth of a link to dataflows
CN108268305A (en) * 2017-01-04 2018-07-10 中国移动通信集团四川有限公司 For the system and method for virtual machine scalable appearance automatically
CN111522636A (en) * 2020-04-03 2020-08-11 安超云软件有限公司 Application container adjusting method, application container adjusting system, computer readable medium and terminal device
CN111865686A (en) * 2020-07-20 2020-10-30 北京百度网讯科技有限公司 Cloud product capacity expansion method, device, equipment and storage medium
CN112199150A (en) * 2020-08-13 2021-01-08 北京航空航天大学 Online application dynamic capacity expansion and contraction method based on micro-service calling dependency perception
CN112434938A (en) * 2020-11-23 2021-03-02 中国建设银行股份有限公司 Resource capacity management method and device
CN112596995A (en) * 2020-12-26 2021-04-02 中国农业银行股份有限公司 Capacity determination method and device based on cluster architecture

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8661182B2 (en) * 2011-05-26 2014-02-25 Vmware, Inc. Capacity and load analysis using storage attributes
US9547534B2 (en) * 2014-10-10 2017-01-17 International Business Machines Corporation Autoscaling applications in shared cloud resources
US20170371693A1 (en) * 2016-06-23 2017-12-28 Vmware, Inc. Managing containers and container hosts in a virtualized computer system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829649B1 (en) * 2000-11-10 2004-12-07 International Business Machines Corporation Method an congestion control system to allocate bandwidth of a link to dataflows
CN108268305A (en) * 2017-01-04 2018-07-10 中国移动通信集团四川有限公司 For the system and method for virtual machine scalable appearance automatically
CN111522636A (en) * 2020-04-03 2020-08-11 安超云软件有限公司 Application container adjusting method, application container adjusting system, computer readable medium and terminal device
CN111865686A (en) * 2020-07-20 2020-10-30 北京百度网讯科技有限公司 Cloud product capacity expansion method, device, equipment and storage medium
CN112199150A (en) * 2020-08-13 2021-01-08 北京航空航天大学 Online application dynamic capacity expansion and contraction method based on micro-service calling dependency perception
CN112434938A (en) * 2020-11-23 2021-03-02 中国建设银行股份有限公司 Resource capacity management method and device
CN112596995A (en) * 2020-12-26 2021-04-02 中国农业银行股份有限公司 Capacity determination method and device based on cluster architecture

Also Published As

Publication number Publication date
CN113342463A (en) 2021-09-03

Similar Documents

Publication Publication Date Title
CN112506444A (en) Kubernetes cluster-based expansion and contraction capacity control method and device and electronic equipment
CN112162829B (en) Resource monitoring data preprocessing system under edge computing scene
CN108491255B (en) Self-service MapReduce data optimal distribution method and system
CN113485792B (en) Pod scheduling method in kubernetes cluster, terminal equipment and storage medium
CN114448989B (en) Method, device, electronic equipment, storage medium and product for adjusting message distribution
CN113228574A (en) Computing resource scheduling method, scheduler, internet of things system and computer readable medium
CN112667403B (en) Scheduling method and device of server and electronic equipment
CN112565391A (en) Method, apparatus, device and medium for adjusting instances in an industrial internet platform
CN115291806A (en) Processing method, processing device, electronic equipment and storage medium
CN111324644B (en) Method and device for monitoring database connection storm under large-scale micro-service architecture
WO2024169138A1 (en) Resource scheduling method and apparatus, and device and storage medium
CN117608754A (en) Processing method and device for multi-resource pool application, electronic equipment and storage medium
CN113342463B (en) Capacity adjustment method, device, equipment and medium of computer program module
CN110247854B (en) Multi-level service scheduling method, scheduling system and scheduling controller
CN116594563A (en) Distributed storage capacity expansion method and device, electronic equipment and storage medium
CN115511453A (en) Data processing method, device, equipment and system
CN115129565A (en) Log data processing method, device, system, equipment and medium
CN114035906A (en) Virtual machine migration method and device, electronic equipment and storage medium
CN106713051A (en) Network management system
CN117749656A (en) Cluster operation monitoring method, device, equipment and storage medium
CN115858309B (en) Data monitoring method and device for distributed system and electronic equipment
CN116909757B (en) Cluster management control system, method, electronic device and storage medium
CN113220230B (en) Data export method and device, electronic equipment and storage medium
CN116860459B (en) Method, device, equipment and medium for monitoring resource pool in cloud platform
CN116614379B (en) Bandwidth adjustment method and device for migration service and related equipment

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
GR01 Patent grant