CN115617517B - Data processing system for applying pod control - Google Patents

Data processing system for applying pod control Download PDF

Info

Publication number
CN115617517B
CN115617517B CN202211248327.1A CN202211248327A CN115617517B CN 115617517 B CN115617517 B CN 115617517B CN 202211248327 A CN202211248327 A CN 202211248327A CN 115617517 B CN115617517 B CN 115617517B
Authority
CN
China
Prior art keywords
application
sub
expanded
target
num
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
CN202211248327.1A
Other languages
Chinese (zh)
Other versions
CN115617517A (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.)
China Travelsky Mobile Technology Co Ltd
Original Assignee
China Travelsky Mobile 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 China Travelsky Mobile Technology Co Ltd filed Critical China Travelsky Mobile Technology Co Ltd
Priority to CN202211248327.1A priority Critical patent/CN115617517B/en
Publication of CN115617517A publication Critical patent/CN115617517A/en
Application granted granted Critical
Publication of CN115617517B publication Critical patent/CN115617517B/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/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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present application provides a data processing system for applying pod control, comprising: the control server and the application running server are connected; the application running server is internally provided with a plurality of applications, each application comprises a plurality of sub-applications, and each application is provided with a unique calling port; the control server performs: in response to the set time, determining a plurality of sub-applications to be expanded from a plurality of sub-applications in an application running server; acquiring the corresponding capacity expansion quantity of each Rong Zi application to be expanded; if the sum Num of the quantity to be expanded max Determining a target to-be-expanded application from w to-be-expanded applications; and sending a capacity expansion instruction to the application running server so that the application running server increases the number of pod which is the corresponding capacity expansion number for each target sub application to be expanded. The application can avoid the unstable condition of the system caused by the excessive number of the integrally increased pod in the same time.

Description

Data processing system for applying pod control
Technical Field
The present application relates to the field of data processing, and more particularly to a data processing system for applying pod control.
Background
Today, many applications are deployed directly on k8s (kubernetes) systems. So that the sub-applications of each application can run on their individual corresponding pod. However, each pod has a configuration upper limit, e.g., a pod can support a maximum number of calls in a minute is upper limit. If the number of times the pod is called exceeds the upper limit within one minute, the problem that the call requests fail occurs is solved. Therefore, in this case, many systems perform capacity expansion processing on the sub-application with the current excessively high call number, that is, increase the number of pod corresponding to the sub-application.
However, if the number of the pod increased as a whole is too large at the same time, the unstable condition of the system is caused, and the rapid increase of the overall call failure rate of the system is caused.
Disclosure of Invention
In view of the above, the present application provides a data processing system for applying pod control that at least partially solves the problems of the prior art.
In one aspect of the application, there is provided a data processing system for applying pod control, comprising: the control server and the application operation server are connected with each other; the application running server is internally provided with a plurality of applications, each application comprises a plurality of sub-applications, and each application is provided with a unique calling port; each sub-application has at least one pod uniquely corresponding thereto.
The control server is used for executing the following steps:
s100, determining a plurality of sub-applications to be expanded from a plurality of sub-applications in the application running server in response to reaching a set time; the sub-applications to be expanded are sub-applications that need to increase the number of their corresponding pod.
S200, obtaining the corresponding capacity to be expanded Num of each Rong Zi application to be expanded 1 ,Num 2 ,...,Num e ,...,Num w E=1, 2, once again, w; wherein w is the number of applications of the volume to be expanded, num e And applying the corresponding capacity expansion quantity for the e-th capacity expansion Rong Zi.
S300, if Num 1 +Num 2 +...+Num e +...+Num w >Num max Step S400 is entered; num (Num) max Is a preset capacity expansion quantity threshold value.
S400, determining at least one target to-be-expanded sub-application from w to-be-expanded sub-applications. The sum of the corresponding capacity to be expanded of at least one target Rong Zi application to be expanded is less than or equal to Num max
S500, sending a capacity expansion instruction to the application operation server so that the application operation server increases the number of pod which is the corresponding capacity expansion number for each target sub application to be expanded.
According to the data processing system for application pod control, through the control server which is arranged independently, a plurality of sub-applications in the application operation server are used for determining a plurality of sub-applications to be expanded. And when the corresponding expansion quantity of the applications to be expanded Rong Zi is only equal to or greater than a preset expansion quantity threshold, determining at least one target application to be expanded from w applications to be expanded, thereby ensuring that the sum of the corresponding expansion quantities of the applications to be expanded Rong Zi of at least one target application to be expanded is less than or equal to Num max . Thus, even if the determined Rong Zi application to be expanded corresponds to the capacity to be expanded only and is greater than Num max And during the process, the capacity expansion is not directly performed, so that the situation that the overall call failure rate of the system is increased rapidly because the number of the integrally increased pod is excessive occurs.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings can be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flowchart of steps performed by a control server in a data processing system for applying pod control according to an embodiment of the present application;
FIG. 2 is a diagram illustrating a call relationship diagram in a data processing system for applying pod control according to an embodiment of the present application.
Detailed Description
Embodiments of the present application will be described in detail below with reference to the accompanying drawings.
It should be noted that, without conflict, the following embodiments and features in the embodiments may be combined with each other; and, based on the embodiments in this disclosure, all other embodiments that may be made by one of ordinary skill in the art without inventive effort are within the scope of the present disclosure.
It is noted that various aspects of the embodiments are described below within the scope of the following claims. It should be apparent that the aspects described herein may be embodied in a wide variety of forms and that any specific structure and/or function described herein is merely illustrative. Based on the present disclosure, one skilled in the art will appreciate that one aspect described herein may be implemented independently of any other aspect, and that two or more of these aspects may be combined in various ways. For example, an apparatus may be implemented and/or a method practiced using any number of the aspects set forth herein. In addition, such apparatus may be implemented and/or such methods practiced using other structure and/or functionality in addition to one or more of the aspects set forth herein.
Noun interpretation:
pod: in Kubernetes clusters, pod is the basis for all traffic types, also the minimum unit level of K8S management, which is a combination of one or more containers.
In one aspect of the application, there is provided a data processing system for applying pod control, comprising: the control server and the application operation server are connected with each other; and a plurality of applications are operated in the application operation server, each application comprises a plurality of sub-applications, and each application is provided with a unique calling port. I.e. each application has only a common interface provided to the outside for making calls. The external device may implement the invocation of the sub-application in the application by sending a call request to the invocation port.
Each sub-application has at least one pod uniquely corresponding thereto. The application running server may be a server in a Kubernetes cluster.
Referring to fig. 1, the control server is configured to perform the following steps:
s100, determining a plurality of sub-applications to be expanded from a plurality of sub-applications in the application running server in response to reaching a set time; the sub-applications to be expanded are sub-applications that need to increase the number of their corresponding pod.
S200, obtaining the corresponding capacity to be expanded Num of each Rong Zi application to be expanded 1 ,Num 2 ,...,Num e ,...,Num w E=1, 2, once again, w; wherein w is the number of applications of the volume to be expanded, num e And applying the corresponding capacity expansion quantity for the e-th capacity expansion Rong Zi.
S300, if Num 1 +Num 2 +...+Num e +...+Num w >Num max Step S400 is entered; num (Num) max Is a preset capacity expansion quantity threshold value.
S400, determining at least one target to-be-expanded sub-application from w to-be-expanded sub-applications; the sum of the corresponding capacity to be expanded of at least one target Rong Zi application to be expanded is less than or equal to Num max
S500, sending a capacity expansion instruction to the application operation server so that the application operation server increases the number of pod which is the corresponding capacity expansion number for each target sub application to be expanded.
According to the data processing system for application pod control, through the control server which is arranged independently, a plurality of sub-applications in the application running server are used for determining a plurality of sub-applications to be expanded. And when the corresponding expansion quantity of the applications to be expanded Rong Zi is only equal to or greater than a preset expansion quantity threshold, determining at least one target application to be expanded from w applications to be expanded, thereby ensuring that the sum of the corresponding expansion quantities of the applications to be expanded Rong Zi of at least one target application to be expanded is less than or equal to Num max . Thus, even if the determined Rong Zi application to be expanded corresponds to the capacity to be expanded only and is greater than Num max During the process, the capacity expansion is not directly carried out, thus the integral expansion is causedThe excessive number of added pod causes a situation in which the overall call failure rate of the system increases dramatically.
In an exemplary embodiment of the present application, the step S400 includes the steps of:
s411, obtaining preset priority parameters A of each Rong Zi to be amplified 1 ,A 2 ,...,A e ,...,A w The method comprises the steps of carrying out a first treatment on the surface of the Wherein A is e A corresponding preset priority parameter is applied for the e-th to-be-amplified Rong Zi. The priority parameters may be preset by a worker according to the importance level of each sub-application, and stored in a parameter table, and specifically, the greater the importance level of a sub-application, the greater the priority parameter thereof.
S412, traversing A 1 ,A 2 ,...,A e ,...,A w If A e Not less than beta, then A e Determining the corresponding to-be-amplified sub-application as the target to-be-amplified sub-application, otherwise, determining A e The corresponding application to be expanded is determined as a candidate application to be expanded. Beta is a preset priority parameter threshold. And the core sub-application and the basic sub-application can be determined through beta, so that the core sub-application in the application to be expanded is screened out, and the expansion treatment is carried out preferentially.
S413, acquiring a first target list ma= (MA 1 ,MA 2 ,...,MA μ ,...,MA λ ) And a second target list mb= (MB 1 ,MB 2 ,...,MB g ,...,MB h ) μ=1, 2, λ, g=1, 2, h, λ+h=w. Wherein lambda is the number of target to-be-expanded sub-applications currently determined, and h is the number of candidate to-be-expanded sub-applications currently determined; MA (MA) μ Applying corresponding capacity expansion quantity for the mu-th target to be expanded Rong Zi, MB g And applying the corresponding capacity expansion quantity for the g candidate Rong Zi to be expanded.
S414, if MA 1 +MA 2 +...+MA μ +...+MA λ <Num max Step S420 is entered.
The step S414 further includes:
s4141, if MA 1 +MA 2 +...+MA μ +...+MA λ >Num max Step S430 is advanced.
If MA 1 +MA 2 +...+MA μ +...+MA λ <Num max It is stated that the application control server is also able to carry the specific MA 1 +MA 2 +...+MA μ +...+MA λ An increase in the number of more pod. Otherwise, the same is true.
S420, respectively obtaining MB 1 ,MB 2 ,...,MB g ,...,MB h Corresponding candidate to-be-expanded Rong Zi applies corresponding call chain length information DL 1 ,DL 2 ,...,DL g ,...,DL h The method comprises the steps of carrying out a first treatment on the surface of the Wherein DL is g Is MB (MB) g And calling chain length information of the corresponding candidate to-be-expanded sub-application, wherein the calling chain length information represents the maximum number of other sub-applications capable of triggering to be called when the corresponding candidate to-be-expanded sub-application is called.
S421 for DL 1 ,DL 2 ,...,DL g ,...,DL h Sequencing to obtain DL 1 1 ,DL 1 2 ,...,DL 1 g ,...,DL 1 h The method comprises the steps of carrying out a first treatment on the surface of the Wherein DL is 1 1 >DL 1 2 >...>DL 1 g >...>DL 1 h . I.e. in order of the priority parameters from big to small.
S422, a first number S is determined.
Wherein DL is 1 1 ,DL 1 2 ,...,DL 1 s The sum of the corresponding to-be-expanded numbers is larger than Num target ,DL 1 1 ,DL 1 2 ,...,DL 1 s-1 The sum of the corresponding to-be-expanded numbers is less than or equal to Num target ,Num target =Num max -(MA 1 +MA 2 +...+MA μ +...+MA λ ) S < h. S423, DL 1 1 ,DL 1 2 ,...,DL 1 s-1 The corresponding candidate to-be-expanded application is determined as the target to-be-expanded application, and the step S500 is entered.
That is, by the above method, the candidate to-be-expanded sub-application with higher priority parameter can be determined as the target to-be-expanded sub-application again, so that as many expansion processes are performed at the same time as possible, the number of more pod is increased, and the overall increase number does not exceed Num max . In this way, it is ensured that Num is not exceeded in the increased number of pod max In this case, the expansion process is preferentially performed on the applications to be expanded with higher importance.
Specifically, the method for determining s may be: sequentially put DL 1 1 ,DL 1 2 ,...,DL 1 g ,...,DL 1 h Accumulating from front to back, and adding the accumulated result to Num target Comparing, if less than or equal to Num target And continuing accumulation, if the accumulated value is larger than the accumulated value, subtracting 1 from the current accumulated value, and determining the value of s.
S430, a third target list Mc= (MC) 1 ,MC 2 ,...,MC μ ,...,MC λ ) The method comprises the steps of carrying out a first treatment on the surface of the Wherein MC μ Is MA μ Corresponding adjustment the number of the latter is chosen to be, to round down the logo.
S431, traversing MA 1 ,MA 2 ,...,MA μ ,...,MA λ MA order μ =MC μ And proceeds to step S500.
Because the sub-applications to be expanded corresponding to the first target list are core sub-applications, in order to ensure good operation of the system, the core sub-applications need to be expanded preferentially. But the sum of the corresponding to-be-expanded numbers of all core sub-applications in a plurality of to-be-expanded sub-applications is larger than Num max If some applications are selected from the first target list to be deleted, the deleted core sub-applications cause large faults in the whole applications, which is unfavorable for the system operation. Thus, in this case, the present application is achieved byReducing the value of each to-be-expanded quantity in the first target list, and adopting lower rounding in calculation can ensure that the sum of all to-be-expanded quantities in the third target list is less than or equal to Num max And no situation that the numerical value is not an integer occurs.
In this way, it can be ensured that each core sub-application in a plurality of applications to be expanded Rong Zi is subjected to capacity expansion processing, and the number of the integrally increased pod is not larger than Num max Is the case.
In some systems, the levels of all sub-applications are substantially the same, so it is not necessary to distinguish whether the sub-applications are core sub-applications, in which case, if the method in the foregoing embodiment is used to determine the target to-be-expanded sub-application, it is obviously unsuitable, so the present application also provides the foregoing embodiment to support the determination of the target to-be-expanded sub-application in the foregoing case.
In an exemplary embodiment of the present application, the step S400 includes the steps of:
s440, obtaining the target parameter D of each application to be expanded 1 ,D 2 ,...,D e ,...,D w . Wherein D is e Applying corresponding target parameters for the e-th to-be-amplified Rong Zi; d (D) e =(Qps1 e -Qps2 e )/Δt;Qps1 e Qps2 for the number of times the e-th to-be-expanded sub-application is invoked within the first sub-time window e For the number of times the e-th application to be expanded Rong Zi is called in a second sub-time window, the ending time of the first sub-time window is the set time (i.e., the current time), the ending time of the second sub-time window is the starting time of the first sub-time window, and the lengths of the first sub-time window and the second sub-time window are deltat.
Specifically, qps1 e And QPs2 e The call port corresponding to the application comprising the e-th application to be expanded can be monitored to obtain the call port. First sonThe lengths of the time window and the second sub-time window may be set according to the requirement, and in this embodiment, the lengths of the two are 1 minute.
(Qps1 e -Qps2 e ) The term/. DELTA.t is understood to mean in a coordinate system with the vertical axis and the horizontal axis representing the number of times the application of the amplicon is invoked. The slope corresponding to the first sub-time window can represent the increasing rate of the number of times the e-th sub-application to be expanded is called, and the larger the value, the more the expansion processing is required.
S441, traversing Num 1 ,Num 2 ,...,Num e ,...,Num w Let Num e =Num max *D e /(D 1 +D 2 +...+D e +...,D w )。
S442, each application to be amplified Rong Zi is determined as a target application to be amplified.
In this embodiment, each application to be expanded Rong Zi is determined as the target application to be expanded, and by letting Num e =D e /(D 1 +D 2 +...+D e +...,D w ) And adjusting the corresponding capacity to be expanded of each Rong Zi application to be expanded. So that the sum of the adjusted capacity to be expanded is equal to Num max . In this way, the number of the integrally increased pod is not more than Num max In the case of (2), capacity expansion processing is performed for each application to be expanded Rong Zi, and a larger number of pod can be added for the application to be expanded, which is called for the times and the increasing rate of which are faster, so as to ensure that the system can operate more stably.
In an exemplary embodiment of the present application, the step S100 includes the steps of:
s110, acquiring call information vector N= (N) of target application in target time window 1 ,N 2 ,...,N i ,...,N x ) I=1, 2,..x; the target time window comprises x sub-time windows, the length of each sub-time window is the same, and the ending time of the x-th sub-time window is the current time, namely the ending time of the target event window is also the current time. The length of the target time window is equal toThe sum of the lengths of the sub-time windows is given by the step size of one sub-time window. Specifically, in this embodiment, x=4 to 8, and preferably, x=4. Each sub-time window is 1-5 minutes in length, preferably 1 minute in length. In this embodiment, each time the target time window goes through a step, a new call information vector is obtained. The target application may be any of several applications.
N i Is the number of times the call port of the target application is called in the ith sub-time window. And determining a plurality of sub-applications of the target application as target sub-applications. When the call port of the target application is called once, at least one target sub-application can be triggered to be called. That is, when the call port receives a call request, a plurality of target sub-applications may be called in the target application.
It can be understood that in this embodiment, the x-th sub-time window is the current sub-time window in the foregoing embodiment, and the x-1 th window is the first comparison sub-time window. The distinguishing names are made herein for ease of understanding only, and should be well understood by those skilled in the art from this description.
S120, obtaining the calling coefficient Q of each target sub-application 1 ,Q 2 ,...,Q p ,...,Q z ,p=1,2,...,z;Q p And z is the number of target sub-applications of the target application, and the calling coefficient represents the probability that the corresponding target sub-application is called when the calling port of the target application is called once.
Specifically, the call coefficient of each target sub-application can be determined through a call relation diagram preset by the target application. The call relation diagram includes at least one call chain, and as shown in fig. 2, the "target sub-application 1-target sub-application 4-target sub-application 9" is one call chain. In the call chain relation diagram, each line segment has a corresponding line segment parameter, and the line segment parameter identifies the probability (note that the probability is not the call coefficient in the foregoing) that the target sub-application on the right side of the line segment is called when the target sub-application/call port on the left side of the corresponding line segment is called. The calling coefficient of each target sub-application needs to be determined through the calling chain where the target sub-application is located and the line segment parameters corresponding to all the line segments located on the left side of the calling chain. As in the call chain "target sub-application 1-target sub-application 4-target sub-application 9", the call coefficient of target sub-application 1 is 0.3 (i.e., when the call port is called 1 time, there is a 30% probability that target sub-application 1 is called). The call coefficient of the target sub-application 4 is 0.3×0.6=0.18 (i.e., when the call port is called 1 time, the target sub-application 4 has a probability of being called 30%).
In the call relation diagram, the line segment parameters corresponding to each line segment can be obtained by counting the data of the historical call request of the target application. In fig. 2, only the segment parameters of a part of the segments are marked, and the rest is not marked, but is subjected to the stealth processing, and does not represent that the corresponding segment parameters are not present.
In this embodiment, when the call port receives a call request, a plurality of target sub-applications may be called in the target application, so Q 1 +Q 2 +...+Q p +...+Q z ≥1。
S130, according to N and Q 1 ,Q 2 ,...,Q p ,...,Q z Determining a call data table G; the z-line data is included in G, and the p-th line data in G is (G p,1 ,G p,2 ,...,G p,i ,...,G p,x ),G p,i =Q p *N i ;G p,i The number of times the ith sub-application is invoked within the ith sub-time window for the p-th target sub-application. It is understood that the size of G is x (column number) z (row number).
S141, determining a growth rate information table M according to G; the data of the z rows are included in M, and the data of the p-th row in M is (M p,1 ,M p,2 ,...,M p,j ,...,M p,y ),M p,j =(G p,j+1 -G p,j )/G p,j ,j=1,2,...,y,y=x-1;M p,j Calling growth rate corresponding to the (j+1) th sub-time window for the (p) th target sub-application;
s142, traversing each row of data of M in turn, if M p,1 ,M p,2 ,...,M p,j ,...,M p,y Are all greater than F 1 (G p,x ) Determining a target sub-application corresponding to the p-th data as a to-be-expanded sub-application; wherein F is 1 () A function is determined for a preset growth rate threshold.
Specifically, in this embodiment, F 1 (G p,x ) The following conditions are met:
if T0 is less than or equal to G p,x < T1, then F 1 (G p,x )=K1;
If T1 is less than or equal to G p,x < T2, then F 1 (G p,x )=K2;
If T2 is less than or equal to G p,x < T3, then F 1 (G p,x )=K2;
If T3 is less than or equal to G p,x < T4, then F 1 (G p,x )=K3;
If T4 is less than or equal to G p,x < T5, then F 1 (G p,x )=K3;
If T5 is less than or equal to G p,x F is then 1 (G p,x )=K4;
Wherein, T0, T1, & gt, T5 are both preset thresholds, and T1 < T2 < & gt, & lt T5; k1 > K2 > K3 > K4. T1-T0 < T2-T1=T3-T2 < T4-T3 < T5-T4.
In this embodiment, by setting 6 preset thresholds of T0, T1, and..5, it is possible to implement that the current number of calls is kept in sub-applications in different intervals, and when judging the sub-applications to be expanded, the used growth rate thresholds are different. The determination of the sub-application to be expanded is more accurate and can be adapted to different types of sub-applications.
By setting 6 preset thresholds as T1-T0 < T2-T1 = T3-T2 < T4-T3 < T5-T4, each interval can be determined more reasonably, and experimental data can indicate that the application of the to-be-amplified region determined by the set intervals is more accurate.
Specifically, in order to determine the to-be-expanded sub-applications in all applications, the method may sequentially determine each application as a target application and perform the steps, or may determine at least part of applications as target applications and perform the steps respectively in a parallel manner.
According to the application control method provided by the embodiment, the number of times that the calling port of the target application is called in each sub-time window is acquired. And determines the call data table G according to the call coefficient (which may be preset) of each target sub-application. And in the call data table, one target sub-application corresponding to each row is called, and the number of times the target sub-application is called in each sub-time window is directly determined by the call coefficient of the target sub-application and the number of times the call port of the target application is called in each sub-time window in one row of data. And determining call growth rates corresponding to each target sub-application from the 2 nd sub-time window to the x th sub-time window respectively. And determining whether the target sub-application corresponding to each row needs to be expanded or not (namely determining the sub-application to be expanded) according to the data of each row in M.
In summary, the application control method provided in this embodiment can directly and quickly determine, according to the calling coefficient, the number of times each target sub-application is predicted to be called in different sub-time windows. Therefore, the number of times of predicted called times of each target sub-application in different sub-time windows can be rapidly determined without analyzing each call request received by a call port of the target application. In this way, the sub-application to be expanded can be determined according to the predicted condition that each target sub-application is called. The calculation amount of the determining process of the application of the to-be-expanded is reduced, system resources are saved, and instantaneity can be improved.
Meanwhile, in this embodiment, when determining the application of the to-be-expanded sub-application, the number of times of the called corresponding to the sub-time window corresponding to the current time is not directly determined. But in M, the data of the same row are all larger than F 1 (G p,x ) And determining the target sub-application corresponding to the row as the application to be expanded. Therefore, unnecessary capacity expansion caused by the condition of quick call or short time can be avoided, so that the determination of the application of the to-be-expanded capacity is more reasonable, and unnecessary system resource waste is reduced. In actual implementation, the staff can also control the number of sub-time windows in the target time windowAnd the quantity and the length of each sub-time window can quickly and flexibly adjust the determination rule of the application of the capacitor to be expanded.
In an exemplary embodiment of the present application, after the step S130, the control server is further configured to perform the steps of:
s151, acquiring a history call information vector L= (L) of the target application in a history time window 1 ,L 2 ,...,L m ,...,L n ) M=1, 2,..n, n > x. Wherein the history time window comprises n history sub-time windows, each of which has the same length and is equal to the length of the sub-time window, the end time of the nth history sub-time window is the current time, L m Is the number of times the call port of the target application is called within the mth historic sub-time window. Specifically, n is equal to 2 to 5 times x.
S152, according to L and Q 1 ,Q 2 ,...,Q p ,...,Q z Determining a history call data table V; the data of the z rows are included in V, and the data of the p-th row in V is (V p,1 ,V p,2 ,...,V p,m ,...,V p,n ),V p,m =Q p *L m ;V p,m The number of times that the mth historical sub-time window is invoked for the mth target sub-application;
s153, obtaining the maximum value MAX in each row of data in V 1 ,MAX 2 ,...,MAX p ,...,MAX z The method comprises the steps of carrying out a first treatment on the surface of the Wherein MAX p Is the maximum value in the p-th row data in V;
s154, traversing G in turn 1,x ,G 2,x ,...,G p,x ,...G z,x If G p,x >MAX p Will G p,x The corresponding target sub-application is determined as the sub-application to be expanded.
In the present embodiment, by MAX 1 ,MAX 2 ,...,MAX p ,...,MAX z It can be reflected that the maximum number of calls of each target sub-application in a sub-time window in the same history event, the data can show that the maximum number of calls of the corresponding target sub-application under normal condition isWhat is, if G p,x >MAX p Then indicate G p,x The number of times the corresponding target sub-application is invoked in the sub-time window corresponding to the current time is too large, so that the target sub-application needs to be determined as the sub-application to be expanded.
In this embodiment, steps S151-S154 may run in parallel with steps S141-S142 to determine the application of the amplicon to be expanded in different ways. The application of the determined to-be-expanded amplicon is more accurate and comprehensive.
In an exemplary embodiment of the present application, after the step S130, the control server is further configured to perform the steps of:
s161, obtaining the average calling number U corresponding to the target period of each target sub-application at the current time 1 ,U 2 ,...,U p ,...,U z . Wherein U is p And the average calling number corresponding to the target period of the p-th target sub-application in the current time is obtained. In this embodiment, the number of target periods may be 24, and the length of each target period may be 1 hour, or the number of target periods may be 1440, and the length of each target period may be 1 minute.
The average number of calls corresponding to each target period may be that the second data source obtains, from the first data source, a call request received by the target application for multiple days (multiple days before the current time) in each target period, and counts the number of times each target sub-application is actually called every day according to the sub-application identifier in the call request. And then each target sub-is sequentially applied to a plurality of target time periods corresponding to each day, and the average value (namely the average calling number) of the actual called times corresponding to each target time period. It can be seen that the average number of calls is not a predicted value but an actual value, compared to the "number of calls" in the previous scheme. However, since the calculation amount required for this actual value is large, only statistics in the history time are performed, not in real time. Thus, a first data source may be understood as a real-time data source and a second data source may be understood as an offline data source. The first data source can ensure that call information vectors are sent to the control server in real time so as to ensure that the application of the to-be-expanded sub-application is determined quickly.
Specifically, in this embodiment, the application control system further includes a first data source and a second data source, where the control server is connected to the first data source and the second data source, and the first data source is connected to the second data source and the application running server at the same time. The first data source may be a cat data source, and the second data source may be a promethaus data source.
The first data source is used for monitoring the number of times that each calling port of the application in the application running server is called and the calling request received by each calling port when each calling port is called.
The calling request comprises sub-application identifiers of all sub-applications which are called by the calling of the corresponding calling port. That is, if the call triggers each target sub-application on the call chain "target sub-application 1-target sub-application 4-target sub-application 9", the call request includes sub-application identifiers of the target sub-application 1, the target sub-application 4 and the target sub-application 9.
The second data source is used for determining the average calling number of each sub-application corresponding to each target period according to the historical data in the first data source. The target time periods are multiple and are connected in a time sequence in an initial mode, and the sum of the lengths of the multiple target time periods is 24 hours.
S162, traversing G in turn 1,x ,G 2,x ,...,G p,x ,...G z,x If G p,x >F 2 (G p,x )*U p Will G p,x The corresponding target sub-application is determined to be the sub-application to be expanded, and the step S700 is carried out; wherein F is 2 () And determining a function for the preset call volume multiple.
F 2 (G p,x ) The following conditions are met:
if T0 is less than or equal to G p,x < T1, then F 2 (G p,x )=B1;
If T1 is less than or equal to G p,x < T2, then F 2 (G p,x )=B2;
If T2 is less than or equal to G p,x <T3F is then 2 (G p,x )=B3;
If T3 is less than or equal to G p,x < T4, then F 2 (G p,x )=B4;
If T4 is less than or equal to G p,x < T5, then F 2 (G p,x )=B4;
If T5 is less than or equal to G p,x F is then 1 (G p,x )=B4;
Wherein B1 > B2 > B3 > B4.
In this embodiment, when determining the to-be-expanded sub-application, the average call number corresponding to each target sub-application in the target period corresponding to the current time may be quickly acquired through the second data source in the history time (because the second data source is determined offline in advance, the average call number may be quickly acquired). If G p,x >F 2 (G p,x )*U p Then G can be determined p,x The number of times that the corresponding target sub-application is called in the sub-time window corresponding to the current time is too large, and capacity expansion processing is needed.
At the same time through F 2 () The method can realize that the calling quantity multiple used is different when the current calling times are kept in the sub-applications in different intervals and the sub-applications to be expanded are judged. The determination of the sub-application to be expanded is more accurate and can be adapted to different types of sub-applications.
Further, F 1 () And F 2 () The 6 preset thresholds are completely the same, so that two functions share one set of parameter configuration, the calculation pressure of the system can be saved, and the method setting is more reasonable.
Specifically, in the present embodiment, t0=50, t1=100, t2=200, t3=300, t4=500, and t5=1000. K1 =0.8, k2=0.4, k3=0.3, k4=0.2; b1 =5, b2=2, b3=1.8, b4=1.4. The experimental data show that the setting of the numerical values enables the determined application of the to-be-expanded amplicon to be more accurate.
In an exemplary embodiment of the present application, after determining the applications of the to-be-expanded, the corresponding number of to-be-expanded (i.e. the number of corresponding pod to be increased) of each application of the to-be-expanded Rong Zi may also be determined by performing the following steps:
and determining the sub-application to be expanded from a plurality of sub-applications in the application running server. The sub-applications to be expanded are sub-applications that need to increase the number of their corresponding pod. The number of applications to be expanded may be plural. In the subsequent step, the following processing may be performed for any one of the applications to be amplified, or may be performed for each application to be amplified Rong Zi in sequence.
And acquiring the call increment RM=Qps 1-Qps2 corresponding to the application to be expanded Rong Zi. Wherein, qps1 is the number of times the application of the to-be-expanded is called in the current sub-time window, and Qps2 is the number of times the application of the to-be-expanded is called in the first contrast sub-time window; the ending time of the current sub-time window is the current time, the ending time of the first comparison sub-time window is the starting time of the current sub-time window, and the lengths of the current sub-time window and the first comparison sub-time window are the same. Specifically, qps1 and Qps2 may be obtained by monitoring a call port corresponding to an application including the application to be expanded. The lengths of the current sub-time window and the first contrast sub-time window can be set according to requirements, and in this embodiment, the lengths of the current sub-time window and the first contrast sub-time window are 1 minute.
Obtaining the quantity Num1=RM/QPs to be expanded t +J1+R (RM/Qps 2); wherein Qps t And carrying an upper limit on the maximum calling times of the pod corresponding to the Rong Zi application to be amplified, wherein J1 is a preset parameter value, RM/QPs2 is a calling growth rate corresponding to the Rong Zi application to be amplified in a current sub-time window, and R () is a preset quantity determination function.
Specifically, through RM/QPs t The determined number can meet the called requirement of the current sub-time window. And increasing J1, a controllable capacity expansion amount management is performed, so that enough buffer space is reserved for the application of the to-be-expanded sub-. J1 and specific values can be set according to actual requirements, and preset parameter values corresponding to different applications to be expanded Rong Zi can be different.
Meanwhile, when RM/QPs2 is larger than a preset judgment threshold YG, R (RM/QPs 2) is a positive value, otherwise R (RM/QPs 2) is a negative value. Namely, under the condition of low call growth rate, the final value of Num1 can be reduced through R (RM/QPs 2) so as to avoid the situation that the excessive capacity expansion quantity causes the waste of system resources. And when RM/QPs2 is higher, the situation that the number of times of calling is continuously increased when the subsequent high probability of the application of the to-be-expanded sub-application is high can be indicated, so that the situation of frequent expansion can be avoided by increasing the final value of Num1 through R (RM/QPs 2). In this embodiment, yg=0.2-0.5. Preferably, yg=0.3.
And sending a capacity expansion instruction to the application operation server so that the application operation server increases Num1 corresponding pod for the sub-application to be expanded.
In the application control system provided in this embodiment, after determining the application of the to-be-expanded sub-, the control server bears the upper limit Qps according to the maximum calling number of the pod corresponding to the current application to be expanded Rong Zi t Calling increment RM corresponding to the current sub-time window, presetting a parameter value J1, and determining the basic capacity expansion quantity. Meanwhile, the supplementary capacity expansion quantity is determined according to the calling growth rate RM/QPs2 corresponding to the current sub-time window and a preset quantity determining function. Therefore, the more reasonable quantity Num1 to be expanded can be accurately determined, and the application running server is controlled to increase Num1 corresponding pod for the sub application to be expanded. The capacity expansion quantity is more accurate, and the situations that redundant pod occupies system resources due to excessive capacity expansion processing or the call request cannot be effectively processed due to too small capacity expansion quantity are reduced.
The same sub-application or sub-application to be expanded is subjected to frequent expansion within a certain time, so that the situation that the sub-application or sub-application to be expanded has operation fluctuation can occur, and the overall operation pressure of the system can be increased.
To solve the above-mentioned problems, in an exemplary embodiment of the present application, after the step S400, the control server is further configured to perform the steps of:
and adding a set identifier for the application of the to-be-expanded capacity. The to-be-expanded sub-application added with the set identifier cannot respond to the expansion instruction of the control server to increase the number of corresponding pod; and the effective duration of the set identifier is Time.
That is, in the time when the set identifier is within the validity period, the to-be-expanded sub-application with the set identifier cannot be automatically expanded by the control server according to the steps. And the situation that the capacity of the same sub-application is frequently expanded is avoided. The Time may be a preset fixed value, such as 3 minutes, 5 minutes, 10 minutes, etc.
However, since the fluctuation or growth condition of the number of times of calling of each sub-application is different under different conditions, if only the Time is set to a fixed value, the situation that the capacity expansion of the same sub-application is frequently performed can be reduced, but if after one sub-application to be expanded is expanded, the corresponding number of times of calling continuously and rapidly increases, but due to the overlarge Time, automatic capacity expansion cannot be performed in Time, and the calling failure of the sub-application to be expanded is greatly increased.
Thus, in one exemplary embodiment of the application, time meets the following conditions:
Time=Time0*(1-(RM-(Qps2-Qps3))/Δt);
wherein Time0 is a preset basic Time parameter, qps3 is the number of times the application of the to-be-expanded is invoked in a second contrast sub-Time window, the end Time of the second contrast sub-Time window is the start Time of the first contrast sub-Time window, the lengths of the first contrast sub-Time window and the second contrast sub-Time window are the same, and Δt is the length of the current Time window. 1 > RM- (QPs 2-QPs 3))/. DELTA.t > 0.
Specifically, RM- (Qps 2-Qps 3))/Δt can be understood as being in a coordinate system with the vertical axis being the number of times the application of the amplicon to be invoked and the horizontal axis being time. The difference in slope corresponding to the current sub-time window and the first contrast sub-time window. If RM- (Qps 2-Qps 3))/Δt is greater than 0, the slope indicating the number of times the application to be expanded is invoked is increased, and at this Time, it can be considered that the application to be expanded Rong Zi will continue to continuously grow with a large probability in the subsequent Time, so that at this Time, the final value of Time can be reduced by Time0 (1- (RM- (Qps 2-Qps 3))/Δt), so that the application to be expanded can recover the state that can be automatically expanded even if the setting identifier is added. Otherwise, the final value of the Time can be increased, so that the situation of frequent expansion is avoided.
In an exemplary embodiment of the application, the application control server is further adapted to perform the steps of:
and in response to receiving an active capacity expansion instruction, which is input by a user, for any to-be-expanded application with a set identifier, determining the to-be-expanded application as a first to-be-expanded Rong Zi application, and increasing the number of corresponding pod of the first to-be-expanded Rong Zi application. That is, after receiving the active capacity expansion instruction actively input by the user, the expansion is performed for the to-be-expanded sub-application even if the to-be-expanded sub-application has the set identifier, so that artificial intervention control can be performed when automatic capacity expansion cannot be performed effectively.
And setting the effective duration of the setting identifier corresponding to the first to-be-expanded Rong Zi application as Time1.
The effective duration of the set identifier of the first to-be-expanded Rong Zi application is updated to be Time1, and the reasonable expansion quantity is often increased after the expansion is performed by manual intervention, so that the update to be Time1 can limit that the first to-be-expanded Rong Zi application cannot be automatically expanded within the Time of Time1, and the running pressure of the system is reduced.
Meanwhile, in the present embodiment, time1 meets the following condition;
Time1=Time0*Num2/Num3;
wherein Num2 is the number of corresponding pod applied by the first to-be-amplified Rong Zi after the active capacity expansion instruction is executed; num3 is the number of corresponding pod applied by the first to-be-expanded Rong Zi before executing the active capacity expansion instruction.
By the arrangement, a reasonable effective duration can be automatically determined, and the situation that the call fails to be increased suddenly due to the fact that the automatic capacity expansion cannot be timely performed due to the fact that the Time1 is too large is reduced.
Furthermore, although the steps of the methods in the present disclosure are depicted in a particular order in the drawings, this does not require or imply that the steps must be performed in that particular order or that all illustrated steps be performed in order to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step to perform, and/or one step decomposed into multiple steps to perform, etc.
From the above description of embodiments, those skilled in the art will readily appreciate that the example embodiments described herein may be implemented in software, or may be implemented in software in combination with the necessary hardware. Thus, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (may be a CD-ROM, a U-disk, a mobile hard disk, etc.) or on a network, including several instructions to cause a computing device (may be a personal computer, a server, a mobile terminal, or a network device, etc.) to perform the method according to the embodiments of the present disclosure.
In an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is also provided.
Those skilled in the art will appreciate that the various aspects of the application may be implemented as a system, method, or program product. Accordingly, aspects of the application may be embodied in the following forms, namely: an entirely hardware embodiment, an entirely software embodiment (including firmware, micro-code, etc.) or an embodiment combining hardware and software aspects may be referred to herein as a "circuit," module "or" system.
An electronic device according to this embodiment of the application. The electronic device is merely an example, and should not impose any limitations on the functionality and scope of use of embodiments of the present application.
The electronic device is in the form of a general purpose computing device. Components of an electronic device may include, but are not limited to: the at least one processor, the at least one memory, and a bus connecting the various system components, including the memory and the processor.
Wherein the memory stores program code that is executable by the processor to cause the processor to perform steps according to various exemplary embodiments of the application described in the "exemplary methods" section of this specification.
The storage may include readable media in the form of volatile storage, such as Random Access Memory (RAM) and/or cache memory, and may further include Read Only Memory (ROM).
The storage may also include a program/utility having a set (at least one) of program modules including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment.
The bus may be one or more of several types of bus structures including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, or a local bus using any of a variety of bus architectures.
The electronic device may also communicate with one or more external devices (e.g., keyboard, pointing device, bluetooth device, etc.), with one or more devices that enable a user to interact with the electronic device, and/or with any device (e.g., router, modem, etc.) that enables the electronic device to communicate with one or more other computing devices. Such communication may be through an input/output (I/O) interface. And, the electronic device may also communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the Internet, through a network adapter. The network adapter communicates with other modules of the electronic device via a bus. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with an electronic device, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, data backup storage systems, and the like.
From the above description of embodiments, those skilled in the art will readily appreciate that the example embodiments described herein may be implemented in software, or may be implemented in software in combination with the necessary hardware. Thus, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (may be a CD-ROM, a U-disk, a mobile hard disk, etc.) or on a network, including several instructions to cause a computing device (may be a personal computer, a server, a terminal device, or a network device, etc.) to perform the method according to the embodiments of the present disclosure.
In an exemplary embodiment of the present disclosure, a computer-readable storage medium having stored thereon a program product capable of implementing the method described above in the present specification is also provided. In some possible embodiments, the various aspects of the application may also be implemented in the form of a program product comprising program code for causing a terminal device to carry out the steps according to the various exemplary embodiments of the application as described in the "exemplary methods" section of this specification, when said program product is run on the terminal device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium would include the following: an electrical connection having one or more wires, a portable disk, a hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer readable signal medium may include a data signal propagated in baseband or as part of a carrier wave with readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device, partly on a remote computing device, or entirely on the remote computing device or server. In the case of remote computing devices, 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., connected via the Internet using an Internet service provider).
Furthermore, the above-described drawings are only schematic illustrations of processes included in the method according to the exemplary embodiment of the present application, and are not intended to be limiting. It will be readily appreciated that the processes shown in the above figures do not indicate or limit the temporal order of these processes. In addition, it is also readily understood that these processes may be performed synchronously or asynchronously, for example, among a plurality of modules.
It should be noted that although in the above detailed description several modules or units of a device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit in accordance with embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into a plurality of modules or units to be embodied.
The foregoing is merely illustrative of the present application, and the present application is not limited thereto, and any changes or substitutions easily contemplated by those skilled in the art within the scope of the present application should be included in the present application. Therefore, the protection scope of the application is subject to the protection scope of the claims.

Claims (8)

1. A data processing system for applying pod control, comprising: the control server and the application operation server are connected with each other; the application running server is internally provided with a plurality of applications, each application comprises a plurality of sub-applications, and each application is provided with a unique calling port; each sub-application has at least one pod uniquely corresponding thereto;
The control server is used for executing the following steps:
s100, determining a plurality of sub-applications to be expanded from a plurality of sub-applications in the application running server in response to reaching a set time; the sub-application to be expanded is a sub-application which needs to increase the number of corresponding pod;
s200, obtaining the corresponding capacity to be expanded Num of each Rong Zi application to be expanded 1 ,Num 2 ,...,Num e ,...,Num w E=1, 2, once again, w; wherein w is the number of applications of the volume to be expanded, num e Applying a corresponding capacity expansion quantity for the e-th Rong Zi to be expanded;
s300, if Num 1 +Num 2 +...+Num e +...+Num w >Num max Step S400 is entered; num (Num) max A preset capacity expansion quantity threshold value;
s400, determining at least one target to-be-expanded sub-application from w to-be-expanded sub-applications; the sum of the corresponding capacity to be expanded of at least one target Rong Zi application to be expanded is less than or equal to Num max
S500, sending a capacity expansion instruction to the application operation server so that the application operation server increases the number of pod which is the corresponding capacity expansion number for each target sub application to be expanded;
the step S100 includes the following steps:
s110, responding to the set time and obtaining a call information vector N= (N) of the target application in a target time window 1 ,N 2 ,...,N i ,...,N x ) I=1, 2,..x; wherein the target time window comprises x sub-time windows, each of which has the same length, the ending time of the x-th sub-time window is the current time, N i The number of times that the calling port of the target application is called in the ith sub-time window; the target application is any one of the plurality of applications; determining a plurality of sub-applications of the target application as target sub-applications; when the calling port of the target application is called once, at least one target sub-application can be triggered to be called;
s120, obtaining the calling coefficient Q of each target sub-application 1 ,Q 2 ,...,Q p ,...,Q z ,p=1,2,...,z;Q p Z is the number of target sub-applications of the target application, and the calling coefficient represents the probability that the corresponding target sub-application is called when the calling port of the target application is called once; q (Q) 1 +Q 2 +...+Q p +...+Q z ≥1;
S130, according to N and Q 1 ,Q 2 ,...,Q p ,...,Q z Determining a call data table G; the z-line data is included in G, and the p-th line data in G is (G p,1 ,G p,2 ,...,G p,i ,...,G p,x ),G p,i =Q p *N i ;G p,i The number of times the p-th target sub-application is invoked in the i-th sub-time window;
s141, determining a growth rate information table M according to G; the data of the z rows are included in M, and the data of the p-th row in M is (M p,1 ,M p,2 ,...,M p,j ,...,M p,y ),M p,j =(G p,j+1 -G p,j )/G p,j ,j=1,2,...,y,y=x-1;M p,j For the p-th orderCalling increasing rate of the mark application corresponding to the j+1th sub time window;
s142, traversing each row of data of M in turn, if M p,1 ,M p,2 ,...,M p,j ,...,M p,y Are all greater than F 1 (G p,x ) Determining a target sub-application corresponding to the p-th data as a to-be-expanded sub-application; wherein F is 1 () A function is determined for a preset growth rate threshold.
2. The data processing system for applying pod control according to claim 1, wherein the step S400 comprises the steps of:
s411, obtaining preset priority parameters A of each Rong Zi to be amplified 1 ,A 2 ,...,A e ,...,A w The method comprises the steps of carrying out a first treatment on the surface of the Wherein A is e Applying a corresponding preset priority parameter for the e-th to-be-expanded Rong Zi;
s412, traversing A 1 ,A 2 ,...,A e ,...,A w If A e Not less than beta, then A e Determining the corresponding to-be-amplified sub-application as the target to-be-amplified sub-application, otherwise, determining A e The corresponding application to be expanded is determined to be a candidate application to be expanded; beta is a preset priority parameter threshold;
s413, acquiring a first target list ma= (MA 1 ,MA 2 ,...,MA μ ,...,MA λ ) And a second target list mb= (MB 1 ,MB 2 ,...,MB g ,...,MB h ) μ=1, 2, λ, g=1, 2, h, λ+h=w; wherein lambda is the number of target to-be-expanded sub-applications currently determined, and h is the number of candidate to-be-expanded sub-applications currently determined; MA (MA) μ Applying corresponding capacity expansion quantity for the mu-th target to be expanded Rong Zi, MB g Applying a corresponding capacity to be expanded amount for the g candidate Rong Zi to be expanded;
s414, if MA 1 +MA 2 +...+MA μ +...+MA λ <Num max Step S420 is entered;
s420, respectively obtaining MB 1 ,MB 2 ,...,MB g ,...,MB h Corresponding candidate to-be-expanded Rong Zi applies corresponding call chain length information DL 1 ,DL 2 ,...,DL g ,...,DL h The method comprises the steps of carrying out a first treatment on the surface of the Wherein DL is g Is MB (MB) g Calling chain length information of the corresponding candidate to-be-expanded sub-application, wherein the calling chain length information represents the maximum number of other sub-applications which can be triggered to be called when the corresponding candidate to-be-expanded sub-application is called;
s421 for DL 1 ,DL 2 ,...,DL g ,...,DL h Sequencing to obtain DL 1 1 ,DL 1 2 ,...,DL 1 g ,...,DL 1 h The method comprises the steps of carrying out a first treatment on the surface of the Wherein DL is 1 1 >DL 1 2 >...>DL 1 g >...>DL 1 h
S422, determining a first number S;
wherein DL is 1 1 ,DL 1 2 ,...,DL 1 s The sum of the corresponding to-be-expanded numbers is larger than Num target ,DL 1 1 ,DL 1 2 ,...,DL 1 s-1 The sum of the corresponding to-be-expanded numbers is less than or equal to Num target ,Num target =Num max -(MA 1 +MA 2 +...+MA μ +...+MA λ ),s<h;
S423, DL 1 1 ,DL 1 2 ,...,DL 1 s-1 The corresponding candidate to-be-expanded application is determined as the target to-be-expanded application, and the step S500 is entered.
3. The data processing system for applying pod control according to claim 2, wherein the step S414 further comprises:
s4141, if MA 1 +MA 2 +...+MA μ +...+MA λ >Num max Step S430 is entered;
s430, a third target list Mc= (MC) 1 ,MC 2 ,...,MC μ ,...,MC λ ) The method comprises the steps of carrying out a first treatment on the surface of the Wherein MC μ Is MA μ Corresponding adjustment the number of the latter is chosen to be,
s431, traversing MA 1 ,MA 2 ,...,MA μ ,...,MA λ MA order μ =MC μ And proceeds to step S500.
4. The data processing system for applying pod control according to claim 1, wherein the step S400 comprises the steps of:
S440, obtaining the target parameter D of each application to be expanded 1 ,D 2 ,...,D e ,...,D w The method comprises the steps of carrying out a first treatment on the surface of the Wherein D is e Applying corresponding target parameters for the e-th to-be-amplified Rong Zi; d (D) e =(Qps1 e -Qps2 e )/Δt;Qps1 e Qps2 for the number of times the e-th to-be-expanded sub-application is invoked within the first sub-time window e The number of times the e-th to-be-expanded Rong Zi application is called in a second sub-time window, wherein the ending time of the first sub-time window is the set time, the ending time of the second sub-time window is the starting time of the first sub-time window, and the lengths of the first sub-time window and the second sub-time window are deltat;
s441, traversing Num 1 ,Num 2 ,...,Num e ,...,Num w Let Num e =Num max *D e /(D 1 +D 2 +...+D e +...,D w );
S442, each application to be amplified Rong Zi is determined as a target application to be amplified.
5. The data processing system for applying pod control according to claim 1, wherein after said step S130, said control server is further adapted to perform the steps of:
s151, acquiring a history call information vector L= (L) of the target application in a history time window 1 ,L 2 ,...,L m ,...,L n ) M=1, 2,..n, n > x; wherein the history time window comprises n history sub-time windows, each of which has the same length and is equal to the length of the sub-time window, the end time of the nth history sub-time window is the current time, L m The number of times the call port of the target application is called in the mth history sub-time window;
s152, according to L and Q 1 ,Q 2 ,...,Q p ,...,Q z Determining a history call data table V; the data of the z rows are included in V, and the data of the p-th row in V is (V p,1 ,V p,2 ,...,V p,m ,...,V p,n ),V p,m =Q p *L m ;V p,m The number of times that the mth historical sub-time window is invoked for the mth target sub-application;
s153, obtaining the maximum value MAX in each row of data in V 1 ,MAX 2 ,...,MAX p ,...,MAX z The method comprises the steps of carrying out a first treatment on the surface of the Wherein MAX p Is the maximum value in the p-th row data in V;
s154, traversing G in turn 1,x ,G 2,x ,...,G p,x ,...G z,x If G p,x >MAX p Will G p,x The corresponding target sub-application is determined as the sub-application to be expanded.
6. The data processing system for applying pod control according to claim 5, wherein after said step S130, said control server is further configured to perform the steps of:
s161, obtaining the average calling number U corresponding to the target period of each target sub-application at the current time 1 ,U 2 ,...,U p ,...,U z The method comprises the steps of carrying out a first treatment on the surface of the Wherein U is p The average calling number corresponding to the target period of the p-th target sub-application at the current time is provided;
s162, traversing G in turn 1,x ,G 2,x ,...,G p,x ,...G z,x If G p,x >F 2 (G p,x )*U p Will G p,x Corresponding toThe target sub-application is determined to be the sub-application to be expanded, and the step S700 is carried out; wherein F is 2 () And determining a function for the preset call volume multiple.
7. The data processing system for applying pod control of claim 6, wherein F 1 (G p,x ) The following conditions are met:
if T0 is less than or equal to G p,x < T1, then F 1 (G p,x )=K1;
If T1 is less than or equal to G p,x < T2, then F 1 (G p,x )=K2;
If T2 is less than or equal to G p,x < T3, then F 1 (G p,x )=K2;
If T3 is less than or equal to G p,x < T4, then F 1 (G p,x )=K3;
If T4 is less than or equal to G p,x < T5, then F 1 (G p,x )=K3;
If T5 is less than or equal to G p,x F is then 1 (G p,x )=K4;
Wherein, T0, T1, & gt, T5 are both preset thresholds, and T1 < T2 < & gt, & lt T5; k1 > K2 > K3 > K4.
8. The data processing system for applying pod control of claim 7, wherein F 2 (G p,x ) The following conditions are met:
if T0 is less than or equal to G p,x < T1, then F 2 (G p,x )=B1;
If T1 is less than or equal to G p,x < T2, then F 2 (G p,x )=B2;
If T2 is less than or equal to G p,x < T3, then F 2 (G p,x )=B3;
If T3 is less than or equal to G p,x < T4, then F 2 (G p,x )=B4;
If T4 is less than or equal to G p,x < T5, then F 2 (G p,x )=B4;
If T5 is less than or equal to G p,x F is then 1 (G p,x )=B4;
Wherein B1 > B2 > B3 > B4.
CN202211248327.1A 2022-10-12 2022-10-12 Data processing system for applying pod control Active CN115617517B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211248327.1A CN115617517B (en) 2022-10-12 2022-10-12 Data processing system for applying pod control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211248327.1A CN115617517B (en) 2022-10-12 2022-10-12 Data processing system for applying pod control

Publications (2)

Publication Number Publication Date
CN115617517A CN115617517A (en) 2023-01-17
CN115617517B true CN115617517B (en) 2023-11-10

Family

ID=84861939

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211248327.1A Active CN115617517B (en) 2022-10-12 2022-10-12 Data processing system for applying pod control

Country Status (1)

Country Link
CN (1) CN115617517B (en)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769100A (en) * 2018-04-03 2018-11-06 郑州云海信息技术有限公司 A kind of implementation method and its device based on kubernetes number of containers elastic telescopics
CN109471725A (en) * 2018-10-24 2019-03-15 新华三大数据技术有限公司 Resource allocation methods, device and server
CN111464355A (en) * 2020-03-31 2020-07-28 北京金山云网络技术有限公司 Method and device for controlling expansion capacity of Kubernetes container cluster and network equipment
CN112559186A (en) * 2020-12-22 2021-03-26 北京云思畅想科技有限公司 Novel Kubernetes container resource expansion and contraction method
CN112835685A (en) * 2021-03-31 2021-05-25 中国工商银行股份有限公司 Container memory adjusting method and device
CN112882794A (en) * 2021-02-25 2021-06-01 重庆紫光华山智安科技有限公司 pod capacity expansion method, device, node and storage medium
CN113051075A (en) * 2021-03-23 2021-06-29 烽火通信科技股份有限公司 Kubernetes intelligent capacity expansion method and device
KR102318533B1 (en) * 2020-06-29 2021-10-28 인하대학교 산학협력단 Method and System for GPU-based Embedded Edge Server Configuration and Neural Network Service Utilization
CN114064199A (en) * 2021-09-29 2022-02-18 浪潮软件科技有限公司 Cluster capacity management method and system
CN114090176A (en) * 2021-11-19 2022-02-25 苏州博纳讯动软件有限公司 Kubernetes-based container scheduling method
CN114116187A (en) * 2020-08-26 2022-03-01 中国电信股份有限公司 Dynamic capacity expansion method and device for container resources
CN114296867A (en) * 2021-12-17 2022-04-08 山东海量信息技术研究院 Container operation method and system of cloud platform and related device
CN114443619A (en) * 2022-01-27 2022-05-06 中国电信股份有限公司 Database capacity expansion method and device, electronic equipment and storage medium
CN114615340A (en) * 2022-03-08 2022-06-10 北京字节跳动网络技术有限公司 Request processing method and device, computer equipment and storage device
CN114942844A (en) * 2022-05-11 2022-08-26 浪潮云信息技术股份公司 MySQL database elastic expansion method and system based on cloud platform

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9185189B2 (en) * 2013-06-07 2015-11-10 Apple Inc. Distributed control over client-side requests for server resources
US11561866B2 (en) * 2019-07-10 2023-01-24 Commvault Systems, Inc. Preparing containerized applications for backup using a backup services container and a backup services container-orchestration pod
US11991077B2 (en) * 2021-03-01 2024-05-21 Juniper Networks, Inc. Data interfaces with isolation for containers deployed to compute nodes

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769100A (en) * 2018-04-03 2018-11-06 郑州云海信息技术有限公司 A kind of implementation method and its device based on kubernetes number of containers elastic telescopics
CN109471725A (en) * 2018-10-24 2019-03-15 新华三大数据技术有限公司 Resource allocation methods, device and server
CN111464355A (en) * 2020-03-31 2020-07-28 北京金山云网络技术有限公司 Method and device for controlling expansion capacity of Kubernetes container cluster and network equipment
KR102318533B1 (en) * 2020-06-29 2021-10-28 인하대학교 산학협력단 Method and System for GPU-based Embedded Edge Server Configuration and Neural Network Service Utilization
CN114116187A (en) * 2020-08-26 2022-03-01 中国电信股份有限公司 Dynamic capacity expansion method and device for container resources
CN112559186A (en) * 2020-12-22 2021-03-26 北京云思畅想科技有限公司 Novel Kubernetes container resource expansion and contraction method
CN112882794A (en) * 2021-02-25 2021-06-01 重庆紫光华山智安科技有限公司 pod capacity expansion method, device, node and storage medium
CN113051075A (en) * 2021-03-23 2021-06-29 烽火通信科技股份有限公司 Kubernetes intelligent capacity expansion method and device
CN112835685A (en) * 2021-03-31 2021-05-25 中国工商银行股份有限公司 Container memory adjusting method and device
CN114064199A (en) * 2021-09-29 2022-02-18 浪潮软件科技有限公司 Cluster capacity management method and system
CN114090176A (en) * 2021-11-19 2022-02-25 苏州博纳讯动软件有限公司 Kubernetes-based container scheduling method
CN114296867A (en) * 2021-12-17 2022-04-08 山东海量信息技术研究院 Container operation method and system of cloud platform and related device
CN114443619A (en) * 2022-01-27 2022-05-06 中国电信股份有限公司 Database capacity expansion method and device, electronic equipment and storage medium
CN114615340A (en) * 2022-03-08 2022-06-10 北京字节跳动网络技术有限公司 Request processing method and device, computer equipment and storage device
CN114942844A (en) * 2022-05-11 2022-08-26 浪潮云信息技术股份公司 MySQL database elastic expansion method and system based on cloud platform

Also Published As

Publication number Publication date
CN115617517A (en) 2023-01-17

Similar Documents

Publication Publication Date Title
CN108376118B (en) Service distribution system, method, device and storage medium
CN111818159B (en) Management method, device, equipment and storage medium of data processing node
US11316792B2 (en) Method and system of limiting traffic
CN111858474B (en) Distributed storage system Inode number allocation management method and related components
EP4242842A1 (en) Thread priority adjusting method, terminal, and computer readable storage medium
CN115617517B (en) Data processing system for applying pod control
CN114168071B (en) Distributed cluster capacity expansion method, distributed cluster capacity expansion device and medium
CN115454680B (en) Application control system
CN110119314B (en) Server calling method and device, server and storage medium
CN114531373A (en) Node state detection method, node state detection device, equipment and medium
CN111078386A (en) Control method and control device of distributed scheduling system
CN115562889B (en) Application control method, electronic equipment and storage medium
CN113765821A (en) Multi-dimensional access flow control system
CN110855484B (en) Method, system, electronic device and storage medium for automatically detecting traffic change
CN111309442B (en) Method, device, system, medium and equipment for adjusting number of micro-service containers
CN115671716B (en) Processing method and device for preloading instance application, storage medium and electronic equipment
JP4485560B2 (en) Computer system and system management program
CN110955579A (en) Ambari-based large data platform monitoring method
CN110932926A (en) Container cluster monitoring method, system and device
CN117493024B (en) Multi-process heterogeneous program migration method, storage medium and electronic equipment
CN112291288B (en) Container cluster expansion method and device, electronic equipment and readable storage medium
JP3020402B2 (en) Status information collection system and status management system
CN114157591B (en) Heartbeat detection method, device, system, electronic equipment and storage medium
CN114339468B (en) Data transmission method and device of unit equipment, computer equipment and storage medium
CN114968108A (en) Method, device and equipment for setting storage life of cache data and 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
GR01 Patent grant