CN112583734A - Burst flow control method and device, electronic equipment and storage medium - Google Patents

Burst flow control method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN112583734A
CN112583734A CN202011396183.5A CN202011396183A CN112583734A CN 112583734 A CN112583734 A CN 112583734A CN 202011396183 A CN202011396183 A CN 202011396183A CN 112583734 A CN112583734 A CN 112583734A
Authority
CN
China
Prior art keywords
service bus
service
application instance
domain
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011396183.5A
Other languages
Chinese (zh)
Other versions
CN112583734B (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 Mobile Communications Group Co Ltd
China Mobile Group Inner Mongolia Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Inner Mongolia 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 Mobile Communications Group Co Ltd, China Mobile Group Inner Mongolia Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202011396183.5A priority Critical patent/CN112583734B/en
Publication of CN112583734A publication Critical patent/CN112583734A/en
Application granted granted Critical
Publication of CN112583734B publication Critical patent/CN112583734B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/21Flow control; Congestion control using leaky-bucket

Abstract

The application discloses a burst flow control method, a device, electronic equipment and a storage medium, belonging to the technical field of electronic information, wherein the burst flow control method comprises the steps of utilizing a dynamic soft load to judge the availability of a service bus application instance; when the service bus application instance is available, carrying out service differentiation on the service bus application instance according to the application program software number of the access channel, and routing the service bus application instance request to an exclusive sub-domain corresponding to the application program software number; and controlling the flow based on a leaky bucket algorithm and a token bucket algorithm. The method realizes the fault discovery and isolation of the application instance level, automatically registers and automatically continues to distribute service requests after the application instance fault is recovered, and allows the traffic of a key business channel to burst under the condition that platform level resources are available by adopting the design of combining a leaky bucket algorithm and a token bucket algorithm through a domain management function of a capability gateway on the application instance.

Description

Burst flow control method and device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of electronic information technologies, and in particular, to a burst flow control method and apparatus, an electronic device, and a storage medium.
Background
With the rapid development of the internet, the service replacement requirement tends to be more and more agile. Various problems also occur in the information construction process of various large internet companies and traditional communication enterprises, such as: the information is isolated, the information is inconsistent, the integration and sharing are difficult, the services of all systems are difficult to cooperate, the development difficulty is high, and the information system is difficult to adapt to rapid service change.
In order to solve the problems, most companies adopt the currently popular micro-service architecture to realize the construction or the transformation of a service center, the micro-services of the service center are uniformly managed by constructing an enterprise-level capability open platform, and after the micro-services are arranged, standardized, lightweight and internet service capability API interfaces are uniformly provided for the outside so as to provide fast service access for a demand party. The existing capacity open platform architecture mainly adopts an enterprise service bus technology to schedule micro-services of an internal service center, and directly performs access control, safety control, flow control, quota control and the like on an open application channel. For access control and flow control, simple access rule judgment can be achieved only according to preset configuration, load balancing is performed through hard load cooperation, and control cannot be performed for dynamic flow.
Disclosure of Invention
An object of the embodiments of the present disclosure is to provide a burst traffic control method, an apparatus, an electronic device, and a storage medium, so as to at least solve the problem that dynamic traffic cannot be managed and controlled in the prior art.
The technical scheme of the disclosure is as follows:
according to a first aspect of the embodiments of the present disclosure, there is provided a burst traffic control method, including: the availability judgment is carried out on the service bus application example by utilizing the dynamic soft load; when the service bus application instance is available, performing service differentiation on the service bus application instance according to the application program software number of the access channel, and routing the request of the service bus application instance to an exclusive domain corresponding to the application program software number according to a service differentiation result; and carrying out flow control on the requests in the exclusive sub-domains based on a leaky bucket algorithm and a token bucket algorithm.
According to a second aspect of embodiments of the present disclosure, there is provided a burst flow control device, which may include: the judging module is used for judging the availability of the service bus application example by utilizing the dynamic soft load; the domain division module is used for carrying out service division on the service bus application instance according to the application program software number of the access channel when the service bus application instance is available, and routing the request of the service bus application instance to an exclusive domain corresponding to the application program software number according to the service division result; and the capacity gateway module is used for carrying out flow control on the request in the exclusive sub-domain based on a leaky bucket algorithm and a token bucket algorithm.
According to a third aspect of the embodiments of the present disclosure, there is provided an electronic apparatus, which may include:
a processor;
a memory for storing processor-executable instructions;
wherein the processor is configured to execute instructions to implement the burst flow control method as shown in any embodiment of the first aspect.
According to a fourth aspect of embodiments of the present disclosure, there is provided a storage medium, in which instructions are executed by a processor of an information processing apparatus or a server to cause the information processing apparatus or the server to implement the burst flow control method as shown in any one of the embodiments of the first aspect.
The technical scheme provided by the embodiment of the disclosure at least brings the following beneficial effects:
the embodiment of the disclosure judges the availability of the service bus application instance by using the dynamic soft load; when the service bus application instance is available, carrying out service differentiation on the service bus application instance according to the application program software number of the access channel, and routing the service bus application instance request to an exclusive sub-domain corresponding to the application program software number; and controlling the flow based on a leaky bucket algorithm and a token bucket algorithm. The method realizes the fault discovery and isolation of the application instance level, automatically registers and automatically continues to distribute service requests after the application instance fault is recovered, and allows the traffic of a key business channel to burst under the condition that platform level resources are available by adopting the design of combining a leaky bucket algorithm and a token bucket algorithm through a domain management function of a capability gateway on the application instance.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure and are not to be construed as limiting the disclosure.
Fig. 1 is a flow diagram illustrating a burst flow control method according to an example embodiment;
FIG. 2 is a diagram illustrating an overall functional architecture in accordance with one particular embodiment;
FIG. 3 is a diagram illustrating a domain-wide management architecture in accordance with one particular embodiment;
FIG. 4 is a schematic diagram illustrating flow control principles according to one particular embodiment;
FIG. 5 is a schematic diagram of an electronic device shown in accordance with an exemplary embodiment;
FIG. 6 is a diagram illustrating an electronic device hardware architecture according to an example embodiment.
Detailed Description
In order to make the technical solutions of the present disclosure better understood by those of ordinary skill in the art, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
Fig. 1 is a schematic flowchart of an embodiment of a burst traffic control method provided in the present application. As shown in fig. 1, the burst traffic control method may include:
step 100: the availability judgment is carried out on the service bus application example by utilizing the dynamic soft load;
step 200: when the service bus application instance is available, performing service differentiation on the service bus application instance according to the application program software number of the access channel, and routing the request of the service bus application instance to an exclusive domain corresponding to the application program software number according to a service differentiation result;
step 300: and carrying out flow control on the requests in the exclusive sub-domains based on a leaky bucket algorithm and a token bucket algorithm.
In the embodiment of the application, the dynamic soft load is built based on a polling algorithm and by integrating a Nginx server and a LUA script language.
In the embodiment of the present application, performing service differentiation on a service bus application instance according to an access channel application program software number, and routing a request of the service bus application instance to an exclusive domain corresponding to the application program software number according to a service differentiation result includes:
and distinguishing the service requests according to the application program software numbers of the service channels, and routing the requests to the exclusive sub-domain of the application program software numbers by using the zookeeper routing configuration according to the service distinguishing results.
In an embodiment of the application, when a service bus application instance is not available, the host process notifies the normal service bus application instance to take over the request of the failed service bus application instance.
In the embodiment of the application, after the application instance of the service bus with the fault is recovered, the dynamic soft load is reused to judge the availability of the application instance of the service bus.
In the embodiment of the application, when the main process fails, the normal service bus application example is elected to obtain a new main process.
In an embodiment of the application, the method further comprises:
and pre-dividing an enterprise service bus domain, and planning an enterprise service bus mapped by the enterprise service bus domain.
As shown in fig. 2, in a specific embodiment of the present application, a capability gateway is established by using a burst traffic control method, and the capability gateway at the outermost end of a capability open platform can perform unified management on pre-operations of API access, such as authentication, current limiting, load balancing, log collection, request fragmentation, and the like. Therefore, the core of the API gateway is that all clients need to access the capability gateway uniformly before being connected to the backend service, and all non-service functions are processed through the gateway layer. According to actual needs, dividing ESB services into a plurality of domains, and enabling the capability gateway to be responsible for carrying out dynamic soft load balancing control according to the participation strategy so as to achieve the purpose of distributing flow according to request characteristics. The capability gateway is also responsible for flow control, IP black and white list verification and the like, and intercepts illegal access at a gateway layer to avoid entering an ESB to occupy the throughput.
The capacity gateway builds a telescopic Web platform by integrating Nginx and LUA, integrates a large number of excellent LUA libraries, third-party modules and dependency items, and can quickly build dynamic lightweight Web services and dynamic gateways which are ultrahigh in concurrency and extremely high in expansibility. The load balance of the traditional API gateway or the capability gateway is realized by adopting a combination of Nginx + Tomcat, and the control of black and white lists and the flow control are realized on a JVM layer.
1. High reliable dynamic soft load:
the capability gateway adopts a Nginx + LUA cluster framework and is based on a polling algorithm to build a dynamic soft load supporting high concurrency and high reliability. Nginx selects a master process in an election mode, the master process is responsible for global initialization and management of the worker processes, each worker process is independent, the master process, all the worker processes and each worker process keep monitoring in a keepalive mode, when a certain worker process breaks down, the master process informs other worker processes to take over a request of the broken worker process, keepalive restarts monitoring after the process is recovered, a routing table allows dynamic registration to be carried out without restarting an API gateway, service requests are continuously processed, and when a certain request channel is blocked, other worker processes also process new requests. And if the master process fails, after other worker processes are disconnected from the monitoring of the master process, the worker process elects again, and a new master process is elected for hosting. Compared with the traditional hard load which only performs server-level health degree check, the Nginx + LUA framework can judge the availability of ESB application examples, if a certain ESB example fails, the service request is not distributed to the example continuously, but the request is distributed to other ESB examples in the same domain for processing, and after the ESB example is recovered, the example loading and registration can be performed dynamically to participate in the service request processing.
The realization principle is as follows:
redis serves as a first-level cache, regular data is cached, and nginx loads from redis faster than the database by 10^ 3. A user inputs dimension (characteristic value), load rule definition and domain (cluster) node definition through curl configuration, and data is stored in redis
-dimension of recording
curl--header"Content-Type:application/json"--request POST--data'{"appId":"appId","method":"method","busiSerial":"busiSerial"}''http://10.220.67.214:28180/adminaction=keypath_set'
-load rule definition-load
curl--header"Content-Type:application/json"--request POST--data'[{"kvs":{"appId":"501146","method":"CRM_SO_INF_PRODORDER_QRY_003","busiSerial":"2015060611223320345443"},"hashkey":"21844dcbe9749c8f719d5188a7e7c3b4","_upstream":"A501146"}]''http://10.220.67.214:28180/adminaction=slbrule_set'
-node definition of cluster
curl--header"Content-Type:application/json"--request POST--data'[
{"code":"A501146","policy":"polling","nodes":[{"fail_timeout":300000,"host":"10.220.67.214","max_fails":2,"path":"/oppf","port":11000,"weight":1},{"fail_timeout":300000,"host":"10.220.67.214","max_fails":2,"path":"/oppf","port":11002,"weight":1},{"fail_timeout":300000,"host":"10.220.67.214","max_fails":2,"path":"/oppf","port":11003,"weight":1}]}]''http://10.220.67.214:28180/adminaction=slbupstream_set'
When a user calls the status interface trigger rule of nginx to take effect, the nginx reads data from the redis, stores the data in an internal lua _ shared _ fact cache, dynamically modifies the upstream, and reconstructs cluster information. When an external request is initiated, nginx firstly analyzes the message, obtains a dimension (characteristic value) value taking path from the lua _ shared _ fact cache, reads data, and then compares load rules in sequence to calculate the matching degree.
2. The domain division function:
the method comprises the following steps: the ESB domain is predefined and to which domain the ESB belongs. The service distribution channel is divided at a capability gateway layer, the capability gateway divides 48 ESB examples of the capability open platform into 16 groups, and each group consists of 3 ESB examples, so that the high availability of each group of the capability open platform is ensured.
Step two: and setting a request domain division rule, wherein the dimension is according to the application, the interface code and the user identification.
Step three: and setting an association relation between the domains and the APP, starting an ESB service routing function, and routing the request to the APP cluster corresponding to the center according to the domain restriction. The capability gateway can distinguish services according to the appid of the service channel, and after a service request enters the capability open platform, the routing configuration of the zookeeper is utilized to separate the back-end centers according to the domain setting, so as to ensure that the back-end centers cannot influence each other.
As shown in fig. 3, the ESB home domain is divided in advance, and a dedicated domain to route the request to the APPID is configured according to the APPID of the access channel. By taking an example of a business hall access request, setting an ESB4 of a capacity gateway 1 domain management server 2, an ESB7 of a server 3 and an ESB10 application instance of a server 4, setting an ESB40 of a capacity gateway 13 domain management server 14, an ESB43 of a server 15 and an ESB46 application instance of a server 16, setting a calling request of an APPID of a business hall, routing the request to the capacity gateway 1 and the capacity gateway 2 in a load balancing way, and distributing the request to 3 ESB application instances managed by the two capacity gateways in a domain balancing way for service request processing.
3. Flow control:
the capacity gateway realizes flow control by adopting a method of combining a leaky bucket algorithm and a token bucket algorithm. As shown in fig. 4, a user configures a traffic rule through an operator view, after configuration is completed, a "synchronization button" is clicked to synchronize data conversion to redis, and an "effect" button is clicked to call a restful interface to take effect at a capability gateway. When the capability gateway receives the request, matching the flow rule according to fields such as APP _ ID, ABILITY _ ID and the like, and executing a corresponding algorithm according to a flow limiting mode (leaky bucket/token bucket).
The leaky bucket algorithm forcibly limits the unit time flow of a single service channel or the unit time called times of a single capacity interface, and as long as the frequency limit is exceeded, the request is rejected, and the burst flow is not allowed. Compared with the traditional flow limiting mode of the leaky bucket algorithm, the capacity gateway adds the token bucket algorithm flow limitation. Token bucket is a process that replenishes tokens into the bucket at a constant rate, takes one token out of the token bucket every time a request is received, and rejects a request if no tokens are available in the bucket, so that the service can continue even with a sudden increase in traffic as long as there are tokens available in the bucket. Whether service can continue to be provided depends on whether the tokens in the bucket are exhausted, with larger buckets allowing higher burstiness. The architecture requires two token buckets to be applied, one for the global token bucket and one for the single channel. If the global bucket has available tokens, single traffic channel traffic is allowed to burst even if the single traffic channel exceeds a preset traffic frequency limit. Only the global bucket can not take out the token, the token bucket of each single service channel is judged at the moment to see whether the token is available or not, if the token is not rejected, the whole system reaches the bottleneck at the moment, and the service channel with a large burst at present can be found out to reject the request so as to ensure that other requests are not influenced.
The realization principle is as follows:
the user stores the data into the redis through the curl configuration;
curl--header"Content-Type:application/json"--request POST--data'[{"kvs":{"appId":"501146"},"flowCtlMethod":"leakyBacket","rate":"30r/s","excee dedFlowStrategy":"S","interval":"3","burst":"20","hashkey":"e0f9787fc870a39f3930c1d7d3f7c487"}]”http://10.220.67.214:28180/adminaction=flowrule_set'
rate is the request rate threshold.
The flowCtlMethod, token bucket is LEAKyBacket.
interval is the duration of continuous rejection of the request after the rate + burst is exceeded.
And burst, namely delaying the concurrency number, and delaying the part with the rate not exceeding the rate + burst to be sent to the back end by adopting a buffering request.
The load of the above embodiment adopts a balanced design, and the traditional combination of Nginx + Tomcat is changed into the combination of Nginx + LUA, so as to solve the problem of high communication performance overhead between processes of the Nginx and the JVM, meanwhile, the fault discovery and isolation of the traditional server level is evolved into the fault discovery and isolation of the application instance level, and the service request is automatically registered and automatically continuously distributed after the fault recovery of the application instance, and the domain-divided management function of the capability gateway on the application instance is realized;
the flow control mechanism adopts a design combining a leaky bucket algorithm and a token bucket algorithm, and allows the flow of the key service channel to burst under the condition that platform-level resources are available.
The traditional combination of Nginx + Tomcat is changed into a combination of Nginx + LUA, so that the problem of high communication performance overhead between the processes of Nginx and JVM is solved. And, the load balancing judgment evolves from the traditional server level fault discovery and isolation to the application instance level fault discovery and isolation optimization. If some ESB bus instances have faults, before the capacity gateway is put into production, the Array only judges whether to distribute the requests to the back end according to the server health check, and cannot judge the faults of service failure caused by the faults of the ESB application instances, so that the requests are continuously distributed to the fault nodes. After the method is put into operation, downstream node selection can be carried out according to business parameter value-taking rules in configuration through a domain-division management function, based on strategy dynamic distribution, firstly, for a key access channel, a plurality of examples of a plurality of servers can be selected to carry out independent management and service on the access channel, the access channel is not shared with other access channels, and normal access to business requests of key channels can be guaranteed during business burst peaks. If some instances have faults, the gateway can judge whether the capability interface has a response to judge whether the application instance is normal, and if the capability interface does not have a normal response, the gateway stops sending the request to the instance to play a role in fault isolation.
And carrying out current limiting by combining a leaky bucket algorithm and a token bucket algorithm. Firstly, in the traditional leaky bucket algorithm, a threshold value needs to be fixed, and burst flow is not allowed, so that the capability calling of a full-channel access party is prevented from being influenced by network attack, unreported second killing transaction and the like. And for the kvs matched requests in the rules, performing current limiting or fusing according to the logic of the rules, for example, setting the maximum threshold of calling request amount per minute of a business hall request to be 2000, and if the request amount exceeds 2000, performing quick error return according to a preset rule. The token bucket algorithm is combined with the traditional leaky bucket algorithm to guarantee the service of the key business channels, so that when the global system capacity does not reach the bottleneck, the flow of the key business channels is increased suddenly, and the continuous available service is guaranteed to be provided.
Based on the same inventive concept, the embodiment of the present disclosure further provides a burst flow control device, including:
the judging module is used for judging the availability of the service bus application example by utilizing the dynamic soft load;
the domain division module is used for distinguishing services of the service bus application instance according to the application program software number of the access channel when the service bus application instance is available, and routing the service bus application instance request to an exclusive domain corresponding to the application program software number;
and the control module is used for controlling the flow based on the leaky bucket algorithm and the token bucket algorithm.
Optionally, as shown in fig. 5, an electronic device 500 is further provided in this embodiment of the present application, and includes a processor 501, a memory 502, and a program or an instruction stored in the memory 502 and capable of being executed on the processor 501, where the program or the instruction is executed by the processor 501 to implement each process of the foregoing burst flow control method embodiment, and can achieve the same technical effect, and in order to avoid repetition, details are not repeated here.
It should be noted that the electronic device in the embodiment of the present application includes the mobile electronic device and the non-mobile electronic device described above.
Fig. 6 is a schematic diagram of a hardware structure of an electronic device implementing an embodiment of the present application.
The electronic device 600 includes, but is not limited to: a radio frequency unit 601, a network module 602, an audio output unit 603, an input unit 604, a sensor 605, a display unit 606, a user input unit 607, an interface unit 608, a memory 609, a processor 610, and the like.
Those skilled in the art will appreciate that the electronic device 600 may further comprise a power source (e.g., a battery) for supplying power to the various components, and the power source may be logically connected to the processor 610 through a power management system, so as to implement functions of managing charging, discharging, and power consumption through the power management system. The electronic device structure shown in fig. 6 does not constitute a limitation of the electronic device, and the electronic device may include more or less components than those shown, or combine some components, or arrange different components, and thus, the description is omitted here.
It is to be understood that, in the embodiment of the present application, the input Unit 604 may include a Graphics Processing Unit (GPU) 6041 and a microphone 6042, and the Graphics Processing Unit 6041 processes image data of a still picture or a video obtained by an image capturing apparatus (such as a camera) in a video capturing mode or an image capturing mode. The display unit 606 may include a display panel 6061, and the display panel 6061 may be configured in the form of a liquid crystal display, an organic light emitting diode, or the like. The user input unit 607 includes a touch panel 6071 and other input devices 6072. A touch panel 6071, also referred to as a touch screen. The touch panel 6071 may include two parts of a touch detection device and a touch controller. Other input devices 6072 may include, but are not limited to, a physical keyboard, function keys (e.g., volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which are not described in detail herein. The memory 609 may be used to store software programs as well as various data including, but not limited to, application programs and an operating system. The processor 610 may integrate an application processor, which primarily handles operating systems, user interfaces, applications, etc., and a modem processor, which primarily handles wireless communications. It will be appreciated that the modem processor described above may not be integrated into the processor 610.
The embodiments of the present application further provide a readable storage medium, where a program or an instruction is stored on the readable storage medium, and when the program or the instruction is executed by a processor, the program or the instruction implements each process of the burst flow control method embodiment, and can achieve the same technical effect, and in order to avoid repetition, details are not repeated here.
The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and so on.
The embodiment of the present application further provides a chip, where the chip includes a processor and a communication interface, the communication interface is coupled to the processor, and the processor is configured to execute a program or an instruction to implement each process of the foregoing burst flow control method embodiment, and can achieve the same technical effect, and the details are not repeated here to avoid repetition.
It should be understood that the chips mentioned in the embodiments of the present application may also be referred to as system-on-chip, system-on-chip or system-on-chip, etc.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element. Further, it should be noted that the scope of the methods and apparatus of the embodiments of the present application is not limited to performing the functions in the order illustrated or discussed, but may include performing the functions in a substantially simultaneous manner or in a reverse order based on the functions involved, e.g., the methods described may be performed in an order different than that described, and various steps may be added, omitted, or combined. In addition, features described with reference to certain examples may be combined in other examples.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solutions of the present application may be embodied in the form of a software product, which is stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal (such as a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present application.
While the present embodiments have been described with reference to the accompanying drawings, it is to be understood that the invention is not limited to the precise embodiments described above, which are meant to be illustrative and not restrictive, and that various changes may be made therein by those skilled in the art without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (10)

1. A method for burst traffic control, comprising:
the availability judgment is carried out on the service bus application example by utilizing the dynamic soft load;
when the service bus application instance is available, carrying out service differentiation on the service bus application instance according to the application program software number of the access channel, and routing the request of the service bus application instance to an exclusive domain corresponding to the application program software number according to a service differentiation result;
and carrying out flow control on the request in the exclusive sub-domain based on a leaky bucket algorithm and a token bucket algorithm.
2. The method according to claim 1, wherein the dynamic soft load is built based on a polling algorithm and integrating a Nginx server and a LUA script language.
3. The method of claim 1, wherein the traffic differentiation of the service bus application instance according to the access channel application software number and the routing of the request of the service bus application instance to the dedicated domain of the corresponding application software number according to the traffic differentiation result comprises:
and distinguishing the service requests according to the application program software numbers of the service channels, and routing the requests to the exclusive sub-domain of the application program software numbers by using the zookeeper routing configuration according to the service distinguishing results.
4. The method of claim 1, wherein when the service bus application instance is not available, the host process notifies the normal service bus application instance to take over the request of the failed service bus application instance.
5. The method of claim 4, wherein the availability determination for the service bus application instance is performed again using dynamic soft loading after the failed service bus application instance is recovered.
6. The method of claim 1, wherein when the host process fails, the normal service bus application instance elects to obtain a new host process.
7. The method according to any one of claims 1-6, further comprising:
and pre-dividing an enterprise service bus domain, and planning an enterprise service bus mapped by the enterprise service bus domain.
8. A burst flow control device, comprising:
the judging module is used for judging the availability of the service bus application example by utilizing the dynamic soft load;
the domain division module is used for carrying out service division on the service bus application example according to the application program software number of the access channel when the service bus application example is available, and routing the request of the service bus application example to an exclusive domain corresponding to the application program software number according to the service division result;
and the capacity gateway module is used for carrying out flow control on the request in the exclusive sub-domain based on a leaky bucket algorithm and a token bucket algorithm.
9. An electronic device, comprising:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the burst flow control method of any of claims 1-7.
10. A storage medium, characterized in that instructions in the storage medium, when executed by a processor of an information processing apparatus or a server, cause the information processing apparatus or the server to implement the burst flow control method according to any one of claims 1 to 7.
CN202011396183.5A 2020-12-03 2020-12-03 Burst flow control method and device, electronic equipment and storage medium Active CN112583734B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011396183.5A CN112583734B (en) 2020-12-03 2020-12-03 Burst flow control method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011396183.5A CN112583734B (en) 2020-12-03 2020-12-03 Burst flow control method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112583734A true CN112583734A (en) 2021-03-30
CN112583734B CN112583734B (en) 2023-04-07

Family

ID=75127824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011396183.5A Active CN112583734B (en) 2020-12-03 2020-12-03 Burst flow control method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112583734B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489726A (en) * 2021-07-06 2021-10-08 中国联合网络通信集团有限公司 Flow limiting method and device
CN113726674A (en) * 2021-08-27 2021-11-30 猪八戒股份有限公司 Nginx + Lua-based flow scheduling method and equipment
CN113923035A (en) * 2021-10-15 2022-01-11 四川新网银行股份有限公司 Dynamic application protection system and method based on attack load and attack behavior

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110289206A1 (en) * 2010-05-21 2011-11-24 Martin Vecera Automatic enterprise service bus deployment at the level of individual services
WO2015061838A1 (en) * 2013-11-03 2015-05-07 Maestrano Pty Ltd. Systems and methods for event driven object management and distribution among multiple client applications
CN108965380A (en) * 2018-05-31 2018-12-07 平安医疗科技有限公司 Service request processing method, device, computer equipment and storage medium
US20190364103A1 (en) * 2018-08-20 2019-11-28 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and device for load balancing, and storage medium
CN111935030A (en) * 2020-08-04 2020-11-13 科大国创云网科技有限公司 Multi-dimensional flow control method and system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110289206A1 (en) * 2010-05-21 2011-11-24 Martin Vecera Automatic enterprise service bus deployment at the level of individual services
WO2015061838A1 (en) * 2013-11-03 2015-05-07 Maestrano Pty Ltd. Systems and methods for event driven object management and distribution among multiple client applications
CN108965380A (en) * 2018-05-31 2018-12-07 平安医疗科技有限公司 Service request processing method, device, computer equipment and storage medium
US20190364103A1 (en) * 2018-08-20 2019-11-28 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and device for load balancing, and storage medium
CN111935030A (en) * 2020-08-04 2020-11-13 科大国创云网科技有限公司 Multi-dimensional flow control method and system

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
XINGBO WU等: "Optimizing Event Polling for Network-Intensive Applications: A Case Study on Redis", 《2013 INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS》 *
李伦等: "基于软件的实时交换式以太网的实现", 《微型电脑应用》 *
王颖等: "基于OpenStack架构的运营商业务系统容器化研究与应用", 《现代信息科技》 *
风来啦: "Nginx负载均衡(仅学习)", 《知乎 HTTPS://ZHUANLAN.ZHIHU.COM/P/86498668》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489726A (en) * 2021-07-06 2021-10-08 中国联合网络通信集团有限公司 Flow limiting method and device
CN113726674A (en) * 2021-08-27 2021-11-30 猪八戒股份有限公司 Nginx + Lua-based flow scheduling method and equipment
CN113726674B (en) * 2021-08-27 2023-11-14 猪八戒股份有限公司 Flow scheduling method and equipment based on Nginx+Lua
CN113923035A (en) * 2021-10-15 2022-01-11 四川新网银行股份有限公司 Dynamic application protection system and method based on attack load and attack behavior
CN113923035B (en) * 2021-10-15 2023-11-07 四川新网银行股份有限公司 Dynamic application protection system and method based on attack load and attack behavior

Also Published As

Publication number Publication date
CN112583734B (en) 2023-04-07

Similar Documents

Publication Publication Date Title
US11115867B2 (en) Method and system for managing utilization of slices in a virtual network function environment
CN112583734B (en) Burst flow control method and device, electronic equipment and storage medium
Chen et al. Reinforcement learning–based QoS/QoE‐aware service function chaining in software‐driven 5G slices
US10594580B2 (en) Network function virtualization management system
US10938727B2 (en) Method and device for offloading processing of data flows
US10250508B2 (en) Load balancing method and system
CN110633151B (en) Method, device and storage medium for balancing distributed message issuing cluster partitions
US10034222B2 (en) System and method for mapping a service-level topology to a service-specific data plane logical topology
US9588815B1 (en) Architecture for data collection and event management supporting automation in service provider cloud environments
US11003516B2 (en) Geographical redundancy and dynamic scaling for virtual network functions
Wang et al. Towards network-aware service composition in the cloud
Wang et al. Minimizing controller response time through flow redirecting in SDNs
US20150016252A1 (en) Source-driven switch probing with feedback request
EP2838243B1 (en) Capability aggregation and exposure method and system
US20110280124A1 (en) Systems and Methods for Load Balancing of Management Traffic Over a Link Aggregation Group
US8605589B2 (en) Dynamic classification and grouping of network traffic for service application
CN107426323A (en) One kind is based on distributed resource service and Visualized Monitoring System and method
CN109428780A (en) A kind of dispatching method of flow monitoring, device, server and storage medium
Gu et al. Optimal component composition for scalable stream processing
US9900804B2 (en) Method and device for processing to share network resources, and method, device and system for sharing network resources
CN108604996A (en) A kind of strategy transmission method and apparatus in NFV systems
US20180124692A1 (en) Method, apparatus and system with carrier network switching control
US10432733B2 (en) Devices and methods for managing a network communication channel between an electronic device and an enterprise entity
CN115580618A (en) Load balancing method, device, equipment and medium
US10447556B2 (en) End user on demand network resource instantiation

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