CN113872808B - Application processing method and device - Google Patents

Application processing method and device Download PDF

Info

Publication number
CN113872808B
CN113872808B CN202111137008.9A CN202111137008A CN113872808B CN 113872808 B CN113872808 B CN 113872808B CN 202111137008 A CN202111137008 A CN 202111137008A CN 113872808 B CN113872808 B CN 113872808B
Authority
CN
China
Prior art keywords
application
edge server
server
proxy
edge
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
CN202111137008.9A
Other languages
Chinese (zh)
Other versions
CN113872808A (en
Inventor
李立
张苗苗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202111137008.9A priority Critical patent/CN113872808B/en
Publication of CN113872808A publication Critical patent/CN113872808A/en
Application granted granted Critical
Publication of CN113872808B publication Critical patent/CN113872808B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/04Network management architectures or arrangements
    • H04L41/042Network management architectures or arrangements comprising distributed management centres cooperatively managing the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The disclosure provides an application processing method and device, relates to computer technology, and particularly relates to the field of big data. The specific implementation scheme is as follows: the edge server receives an application operation instruction from the central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application. And the edge server acquires the data packet to be processed corresponding to the target application according to the identification of the target application. And the edge server executes the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type. The center server sends the application operation instruction to the edge servers, and then the edge servers can acquire the data packets to be processed corresponding to the target applications according to the identification of the target applications, and execute the operation on the target applications according to the operation types indicated by the application operation instruction, so that the automatic implementation of the application maintenance of each edge server is realized, and the maintenance efficiency of the applications in the edge servers is effectively improved.

Description

Application processing method and device
Technical Field
The disclosure relates to the field of big data in computer technology, and in particular relates to an application processing method and device.
Background
The content delivery network (Content Delivery Network, CDN) relies on the edge servers deployed in various places, and can enable users to obtain required content nearby through the functional modules of load balancing, content delivery, scheduling and the like of the center platform, so that network congestion is reduced.
Currently, for the purpose of achieving the user's near access, a plurality of applications are usually installed in an edge server to support nodes to provide corresponding services, such as log related applications, monitoring applications, and the like, and in the prior art, when maintaining applications in an edge service area, software packages of each application on the edge server are usually maintained by operation and maintenance personnel.
However, the number of edge servers is often very large, and maintenance of applications on each edge server by an operator may result in inefficient maintenance of the applications.
Disclosure of Invention
The disclosure provides an application processing method and device.
According to a first aspect of the present application, there is provided an application processing method applied to a content delivery network CDN, where the CDN includes a central server and a plurality of edge servers, and a plurality of applications are provided in the edge servers, the method includes:
The edge server receives an application operation instruction from a central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
the edge server obtains a data packet to be processed corresponding to the target application according to the identification of the target application;
and the edge server executes the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type.
According to a second aspect of the present application, there is provided an application processing method applied to a CDN, where the CDN includes a central server and a plurality of edge servers, and a plurality of applications are disposed in the edge servers, the method includes:
the method comprises the steps that a central server generates an application operation instruction, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
and the center server sends the application operation instruction to the edge server.
According to a third aspect of the present application, there is provided an application processing apparatus applied to a content delivery network CDN, the CDN including a central server and a plurality of edge servers, the edge servers having a plurality of applications disposed therein, the apparatus comprising:
The receiving module is used for receiving an application operation instruction from the central server by the edge server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
the acquisition module is used for acquiring the data packet to be processed corresponding to the target application according to the identification of the target application by the edge server;
and the processing module is used for executing the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type by the edge server.
According to a fourth aspect of the present application, there is provided an application processing apparatus applied to a CDN, where the CDN includes a central server and a plurality of edge servers, and a plurality of applications are disposed in the edge servers, the apparatus includes:
the processing module is used for generating an application operation instruction by the central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
and the sending module is used for sending the application operation instruction to the edge server by the center server.
According to a fifth aspect of the present application, there is provided an electronic device comprising:
At least one processor; and
a memory communicatively coupled to the at least one processor; wherein, the liquid crystal display device comprises a liquid crystal display device,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of the first or second aspect.
According to a sixth aspect of the present application, there is provided a non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the method of the first or second aspect.
According to a seventh aspect of the present application, there is provided a computer program product comprising: a computer program stored in a readable storage medium from which at least one processor of an electronic device can read, the at least one processor executing the computer program causing the electronic device to perform the method of the first or second aspect.
The techniques according to the present disclosure solve the problem of low maintenance efficiency of the application.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the disclosure, nor is it intended to be used to limit the scope of the disclosure. Other features of the present disclosure will become apparent from the following specification.
Drawings
The drawings are for a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
fig. 1 is a schematic system architecture diagram of a content distribution network according to an embodiment of the present application;
FIG. 2 is a flowchart of an application processing method according to an embodiment of the present application;
FIG. 3 is a second flowchart of an application processing method according to an embodiment of the present disclosure;
fig. 4 is a schematic diagram of role information provided in an embodiment of the present application;
FIG. 5 is a schematic diagram of application identifier provided in an embodiment of the present application;
FIG. 6 is a schematic diagram illustrating an implementation of an update of an application version of an edge server according to an embodiment of the present application;
fig. 7 is a flowchart III of an application processing method provided in an embodiment of the present application;
fig. 8 is a schematic implementation diagram of an application processing method according to an embodiment of the present application;
FIG. 9 is a schematic diagram of an application processing apparatus according to an embodiment of the disclosure;
FIG. 10 is a second schematic structural diagram of an application processing device according to an embodiment of the disclosure;
fig. 11 is a block diagram of an electronic device for implementing an application processing method of an embodiment of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
For better understanding of the technical solutions of the present application, the related art related to the present application is described in further detail below.
The full name of CDN is Content Delivery Network, the content delivery network. The basic idea is to avoid the bottleneck and link on the internet which possibly affects the data transmission speed and stability as much as possible, so that the content transmission is faster and more stable. Through a layer of intelligent virtual network formed by node servers placed everywhere in the network and based on the existing internet, the CDN system can redirect the user's request to the service node nearest to the user in real time according to the network flow and the comprehensive information of the connection of each node, the load condition, the distance to the user, the response time and the like. The method aims to enable the user to obtain the required content nearby, solve the problem of congestion of the Internet network and improve the response speed of the user for accessing the website.
Furthermore, the CDN relies on the edge servers deployed in various places, and the user can obtain the required content nearby through the load balancing, content distribution, scheduling and other functional modules of the center platform, so that network congestion is reduced, and the access response speed and hit rate of the user are improved.
In order to achieve the purpose of nearby access of users, a large number of CDN network nodes need to be paved around the country, the nodes are located at user access points and are content providing devices facing end users, static Web (network) content and streaming media content can be cached, and edge propagation and storage of the content are achieved, so that the users can access nearby.
To achieve these functions, a server deployed in an edge node needs to install various software packages to support the node to provide the service, such as a nginx application, a cache (cache) application, a log-related application, a monitoring application, a system environment foundation package, and the like, and roughly estimates up to 20 applications that need to be installed on one machine. Where nginx is a high performance hypertext transfer protocol (Hyper Text Transfer Protocol, HTTP) and reverse proxy web server.
Currently, in the prior art, maintenance of applications on each edge server is typically performed by operation and maintenance personnel. The operation and maintenance personnel need to perform a series of dimensions of application lifecycles such as application deployment, application changing, application unloading and the like on the servers to ensure that CDN services are provided.
Because of the different functions provided by different machines, it is also contemplated that different applications may be deployed on different machines and different application versions. The actions aiming at the software package classes comprise new service deployment, old service updating and old service offline, and the deployment of specific applications and the like of machines with different role information and the front and back installation sequence of each software package is considered during deployment, if the workload is multiplied by the number of the applications and the number of the machines, the software package on the CDN machine is maintained by operation and maintenance personnel or developers, and the complex process is realized.
Therefore, in the implementation scheme in the prior art, the problems of high difficulty in maintaining the application on the edge server and low efficiency exist.
Aiming at the problems in the prior art, the application provides the following technical conception: it is desirable to provide a way to enable automated management of applications on CDN machines. For example, the role information of each server can be maintained in the central server, the candidate applications corresponding to each role information can be maintained in the central server, then the instructions for maintaining the target application in the candidate applications can be sent to the edge server in batches based on the role information of the server and the candidate applications corresponding to the role information, and then the edge server executes corresponding maintenance operations according to the instructions, so that the application maintenance on the edge machine can be automatically realized. The method reduces the burden of operation and maintenance and the maintenance of software versions on the machine by developers, and reduces manual intervention.
Meanwhile, because the number of the edge servers is very large, tens of thousands of machines connected below can be controlled through the central control in the system design, and the principle of simple use is also maintained in use on the basis of considering the characteristics of system load balancing and concurrency. Therefore, in the application, part of servers in the CDN node can be set as proxy servers, wherein the proxy servers can forward data between the edge servers and the central control server, so that the pressure of the central server is reduced.
For example, the system structure of the CDN in the embodiment of the present application may be described with reference to fig. 1, and fig. 1 is a schematic system structure diagram of the content delivery network provided in the embodiment of the present application.
As shown in fig. 1, the CDN system in the present application includes a central system and CDN nodes.
The central system can comprise a plurality of central servers, and it can be understood that the central control is deployed in a cluster mode in the system design, so that parallel batch processing and issuing multitasking can be realized.
And, a plurality of edge servers may be included in the CDN node, where the edge servers are all machines that can provide corresponding services for users, and in one possible implementation, the edge servers in this embodiment may be divided into proxy edge servers and non-proxy edge servers.
The non-proxy edge server is a common server for providing corresponding services for users.
And the proxy edge server can receive the data sent by the central server and forward the data sent by the central server to the corresponding non-proxy edge server. And the proxy edge server may also forward data sent by the non-proxy edge server to the hub server, that is, the proxy edge server may act as a server for data transfer between the hub server and the non-proxy edge server.
Meanwhile, the proxy edge server is also used as an edge server, so that corresponding functions can be provided for the user, that is, the proxy edge server can also directly interact with the central server without forwarding the data.
That is, the proxy edge server and the non-proxy edge server are similar in providing services to users, except that the proxy edge server adds a role as an intermediary for data transfer.
It will be appreciated that in CDN nodes, the number of proxy edge servers is relatively small, and the number of non-proxy edge servers is relatively large. For example, in a CDN node, the data interaction between 1000 edge servers and a small number of servers is guaranteed by setting proxy edge servers, assuming that 100 edge servers can be used as proxy edge servers and another 900 edge servers can be used as non-proxy edge servers, so that the pressure of a central server can be effectively reduced.
And it may be understood that, for example, each non-proxy edge server in this embodiment may be respectively provided with a proxy edge server corresponding to each non-proxy edge server, and in one possible implementation, a communication connection may be established between the non-proxy edge server and the corresponding proxy edge server, for example, and then the non-proxy edge server and the corresponding proxy edge server may perform data interaction.
For example, referring to fig. 1, it is assumed that there are currently a proxy edge server a, a proxy edge server B, and a proxy edge server C, where proxy edge server a corresponds to a non-proxy edge server A1 and a non-proxy edge server A2, and proxy edge server B corresponds to a non-proxy edge server B1 and a non-proxy edge server B2. Then, for example, the non-proxy edge server A1 is taken as an example, and the non-proxy edge server A1 establishes a communication connection with the proxy edge server a and performs data interaction with the proxy edge server a.
And it can be understood that, in addition to the data interaction, the proxy edge server in this embodiment can also perform maintenance of the application in the proxy edge server, so that the proxy edge server can also directly perform the data interaction with the central server, so as to implement maintenance of the application in the proxy edge server.
It can be understood from the foregoing description that the central system in the present application is formed by a plurality of central servers, and when processing tasks, the central system can implement parallel processing and transfer the tasks of application maintenance to a machine connected with the central system, where the machine may be a proxy edge server or a non-proxy edge server.
Wherein, for any edge server, each edge server corresponds to its own role information, and if the machine role information of a certain edge server is a proxy edge server, the edge server can act as a proxy function. And the machine for which the machine role information is a non-proxy edge server, which may be connected to a proxy edge server in the same node, for example, the non-proxy edge server A1 and the non-proxy edge server A2 in fig. 1 are connected to the proxy edge server a thereof, wherein the non-proxy edge server A1 and the non-proxy edge server A2 can both receive and download files directly from the proxy edge server a, without directly connecting to the central controller, so that the pressure of the central controller can be reduced.
In an alternative implementation, if no proxy edge server is found available in the node at the non-proxy edge server, the central server may be directly connected, for example, the non-proxy edge server C in fig. 1 is directly connected to the central server and does not pass through the proxy edge server. The architecture design of the application management not only can reduce the pressure of central control, but also can improve the efficiency of processing tasks.
It is understood that the correspondence between the non-proxy edge server and the proxy edge server in this embodiment may be preconfigured. Or the non-proxy edge server can search whether the available proxy edge server exists at present or not every time the data interaction is needed, and if so, communication connection is established between the non-proxy edge server and the available proxy edge server so as to carry out the data interaction. The specific implementation manner of determining the correspondence between the non-proxy edge server and the proxy edge server is not limited in this embodiment, and may be selected and set according to actual requirements.
On the basis of the above description, the application processing method provided in the present application will be described with reference to the specific embodiments, first, with reference to fig. 2, and fig. 2 is a flowchart of the application processing method provided in the embodiment of the present application.
As shown in fig. 2, the method includes:
s201, the edge server receives an application operation instruction from the central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application.
In this embodiment, the edge server may receive an application operation instruction from the central server, where the application operation instruction may indicate a corresponding operation performed on the target application, and in a possible implementation, the application operation instruction may include an identifier of the target application and an operation type that performs an operation on the target application.
Based on the foregoing, it may be determined that the plurality of edge servers in this embodiment may include a plurality of proxy edge servers and a plurality of non-proxy edge servers, and in one possible implementation, the non-proxy edge servers may establish a communication connection with the corresponding proxy edge servers. Based on the description, it may be determined that the correspondence relationship currently described may be a pre-configured correspondence relationship of the description, or may also be a correspondence relationship determined after determining a currently available proxy edge server.
In this embodiment, for the proxy edge server and the non-proxy edge server, when receiving an application operation instruction from the central server, there may be a certain difference in implementation manner.
In one possible implementation, if the current edge server is a proxy edge server, the proxy edge server may directly receive the application operation instruction sent by the central server.
It will be appreciated that the current application operating instructions are sent directly by the central server to the proxy edge server.
In another possible implementation, if the current edge server is a non-proxy edge server, the non-proxy edge server may receive an application operation instruction forwarded by the corresponding proxy edge server from the central server.
It will be appreciated that the central server will send the application operation instructions to the proxy edge servers and indicate that the application operation instructions are forwarded to the corresponding non-proxy edge servers, so that the proxy edge servers, upon receiving the application operation instructions, may forward the application operation instructions to the corresponding non-proxy edge servers.
Or in an alternative implementation manner, if there is no available proxy edge server, the non-proxy edge server may also directly receive the application operation instruction sent by the central server, and the specific implementation manner of the application operation instruction is not limited in this embodiment, and may be selected according to actual requirements.
It can be appreciated that when the central server issues the application operation instruction, it needs to indicate whether the current application operation instruction is directly sent to the proxy edge server or needs to be forwarded to the corresponding non-proxy edge server by the proxy edge server. Thus, in one possible implementation manner, for example, the application operation instruction may include indication information, where when the indication information is the first indication information, the first indication information may indicate that the application operation instruction is sent to the proxy edge server; or when the indication information is the second indication information, the second indication information may indicate that the application operation instruction is to instruct the proxy edge server to forward to the corresponding non-proxy edge server.
Or based on the description, it can be determined that the application operation instruction includes the identifier of the edge server corresponding to the current application operation instruction, and then the proxy edge server can determine, when receiving the application operation instruction, to which edge server the current application operation instruction is specifically sent, and further can determine whether to directly receive the application operation instruction or forward the application operation instruction.
Meanwhile, it can be understood that when the central server issues the application operation instruction, batch issuing of the application operation instruction can be performed for a batch of edge servers, or individual issuing of the application operation instruction can be performed for individual edge servers, which is not limited in this embodiment, and can be selected according to actual requirements.
S202, the edge server acquires a data packet to be processed corresponding to the target application according to the identification of the target application.
After receiving the application operation instruction, the edge server needs to perform a corresponding operation on the target application according to the application operation instruction, where in this embodiment, the operation performed on the target application may be, for example, installation of the application, uninstallation of the application, inspection of the application, and the like, and the specific implementation manner of the operation corresponding to the target application is not particularly limited in this embodiment.
It will be understood that if these corresponding operations need to be performed on the target application, then the data packets to be processed corresponding to the target application need to be acquired, for example, an installation packet, an unloading packet, an update packet, etc., so that the edge server can acquire the data packets to be processed corresponding to the target application according to the identifier of the target application.
For the non-proxy edge server, in one possible implementation manner, the non-proxy edge server may obtain, for example, a to-be-processed data packet corresponding to the target application from the local location according to the identifier of the target application. Or the non-proxy edge server can also obtain the data packet to be processed corresponding to the target application from the proxy edge server according to the identification of the target application.
For the proxy edge server, for example, the proxy edge server may obtain a pending data packet corresponding to the target application from the local area. Alternatively, the proxy edge server may also obtain a pending data packet corresponding to the target application from the central server.
The specific implementation manner of obtaining the data packet to be processed corresponding to the target application by the edge server is not limited in this embodiment, and the specific implementation manner may be selected according to actual requirements, as long as the edge server can obtain the corresponding data packet to be processed from the position where the data packet to be processed is stored.
S203, the edge server executes the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type.
After obtaining the data packet to be processed corresponding to the target application, the edge server may perform a corresponding operation with respect to the target application, and it may be determined based on the foregoing description that the application operation instruction further includes an operation type, where the operation type is used to indicate what operation is specifically performed with respect to the target application currently, where the possible operation may include, for example, installation, uninstallation, inspection, updating, and so on, which is not limited in this embodiment.
And the obtained data packet to be processed corresponding to the target application already comprises data required by corresponding operation currently aiming at the target application, so that the edge server can execute the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type so as to realize the operations of installing, uninstalling, checking, updating and the like of the target application.
The application processing method provided by the embodiment of the application comprises the following steps: the edge server receives an application operation instruction from the central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application. And the edge server acquires the data packet to be processed corresponding to the target application according to the identification of the target application. And the edge server executes the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type. The center server sends the application operation instruction to the edge server to instruct the edge server to perform corresponding operation on the target application, then the edge server can acquire a data packet to be processed corresponding to the target application according to the identification of the target application, and then the edge server can perform corresponding operation on the target application according to the operation type indicated by the application operation instruction, so that the automatic implementation of the application maintenance of each edge server is realized, and the maintenance efficiency of the application in the edge server is effectively improved.
On the basis of the above embodiment, the application processing method provided in the embodiment of the present application is described in further detail below with reference to fig. 3 to 5, fig. 3 is a flowchart second of the application processing method provided in the embodiment of the present application, fig. 4 is a schematic diagram of role information provided in the embodiment of the present application, and fig. 5 is a schematic diagram of application identifier provided in the embodiment of the present application.
As shown in fig. 3, the method includes:
s301, the edge server takes the first duration as a period, and obtains a data packet to be processed of at least one candidate application from the proxy edge server and/or the center server, wherein the at least one candidate application comprises a target application.
For example, for the proxy edge server, in this embodiment, the proxy edge server may periodically obtain, for example, at a first duration, a pending data packet of at least one candidate application from the central server. The target application is included in at least one candidate application in this embodiment. It will be appreciated that the candidate application in this embodiment may be an application that requires maintenance on the corresponding edge server.
For example, for the non-proxy edge server, in this embodiment, the non-proxy edge server may periodically obtain the to-be-processed data packet of at least one candidate application from the proxy edge server or the central server, for example, with the first duration as a period, where a specific implementation manner of the first duration may be selected according to actual requirements, which is not limited in this embodiment.
For example, for a non-proxy edge server, in one possible implementation, in the proxy edge server, for example, a data packet to be processed of at least one candidate application corresponding to each non-proxy edge server may be stored, where the data packet to be processed stored in the proxy edge server may be obtained from a central server for the proxy edge server, for example. The proxy edge server may acquire the data packet to be processed from the central server, for example, periodically with a preset duration, or may acquire the data packet in real time when an acquisition request of the non-proxy edge server is received, which is not particularly limited in this embodiment.
In this embodiment, the center server stores role information (role) corresponding to each edge server, and the role information in this embodiment may be at least one of the following: proxy edge server, non-proxy edge server.
For example, the character information stored in the central server may be as shown in fig. 4, and referring to fig. 4, the character information of each edge server may be stored in the central server, for example, the character information of each edge server a and each edge server B are proxy edge servers, and the character information of each edge server C, each edge server A1, each edge server A2, each edge server B1, and each edge server B2 is a non-proxy edge server. And in an alternative implementation, the division of the role information for each edge server may also have a more detailed division, for example, multiple role information for non-proxy edge servers may also be divided, and for example, multiple role information for proxy edge servers may also be divided. The specific implementation manner of the role information division of the edge server is not limited in this embodiment, and it can be selected and set according to actual requirements.
And the application identifiers corresponding to the character information are also stored in the central server. It is understood that there may be multiple candidate applications (apps) under one piece of role information. For example, as can be understood with reference to fig. 5, applications 1, 2, and 3 may be corresponding to the role information of the non-proxy edge server, and applications 1, 2, 4, and 5 may be corresponding to the role information of the proxy edge server, for example. The candidate applications corresponding to the character information represent applications required to be maintained by the edge server of the current character information. In the actual implementation process, the specific implementation of the candidate application corresponding to each role information may be selected according to the actual requirement, which is not limited in this embodiment.
And defining priorities for a plurality of candidate applications corresponding to each role information, wherein when the applications are deployed, the applications can be deployed according to the priorities, and the deployed applications represent the deployed edge servers.
And software packages corresponding to the candidate applications are also stored in the central server. It will be appreciated that each candidate application has a software package (pkg) in which all files and installation logic for that candidate application are contained, wherein the actions supported by the software package are: installation (install), update (update), check (check), uninstall (uninstall) actions.
And at least one file corresponding to each software package is also included in the central server. It can be understood that the files which are frequently changed in the software package (pkg) can be extracted and then be associated with the software package as files corresponding to the software package, and if the files are updated or checked only when the applications are updated or checked later, the maintenance of the applications can be quickly and effectively realized. Among these actions supported by the file are update and check actions.
And the center server also comprises services corresponding to the candidate applications. It will be appreciated that each candidate application has its services running, and that the management actions of the services are start, stop, reload, etc., which can support custom actions.
Therefore, the role information of each edge server and various attributes of the application corresponding to each role information are maintained in the central server, and according to the attributes, instructions of application deployment operation can be automatically generated in batches when the application deployment is carried out. And when the server is deployed and the fault machine is repaired, the application needing to be deployed on the machine can be automatically associated with the machine according to the role information of the machine.
Based on the above description, the data packet to be processed in this embodiment may include at least one of the following: the software package, the file corresponding to the software package and the data package corresponding to the service.
Based on the above description, it may be determined that various types of information are maintained in the central server, where the proxy edge server may obtain the pending data packets of at least one candidate application from the central server. It may be acquired in real time, for example, or may also be acquired in timing, which is not particularly limited in this embodiment.
It should be noted that, when the edge server performs the acquisition of the data packet to be processed, for example, an incremental acquisition manner may be adopted, that is, each time the data packet to be processed is acquired, which is updated compared with the last time. Or a full-update acquisition mode can be adopted, that is to say, all the data packets to be processed are acquired each time, and then the data packets to be processed which are stored locally and currently are deleted.
S302, the edge server stores the data packets to be processed of at least one candidate application locally.
After the edge server obtains the data packet to be processed of at least one candidate application, the data packet to be processed can be stored locally, so that the data packet to be processed can be obtained when the application maintenance is performed later.
It can be understood that the edge server can store the data packet to be processed in the local area in advance before receiving the application operation instruction by acquiring the data packet to be processed of at least one candidate application in a timing manner, and can quickly and effectively acquire the data packet to be processed from the local area after receiving the application operation instruction so as to maintain the application, thereby effectively improving the speed and efficiency of application maintenance.
It should be noted that, in the implementation manner of acquiring and storing the data packet to be processed at the timing described in S301 and S302, the execution sequence is only executed according to the first duration as a period, and there is no strict timing relationship between the execution sequences of the remaining steps.
S303, the edge server receives an application operation instruction from the central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application.
The implementation of S303 is similar to that of S201, and will not be described here again.
S304, the edge server acquires a data packet to be processed corresponding to the target application according to the identification of the target application.
The implementation of S304 is similar to that of S202, and will not be described here again.
And based on the description, it can be determined that the data packet to be processed corresponding to the at least one application can be stored in the local area of the edge server, so that the edge server can obtain the data packet to be processed corresponding to the target application from the local area according to the representation of the target application.
Or in an alternative implementation manner, the non-proxy edge server may further acquire the data packet to be processed corresponding to the identifier of the target application from the corresponding proxy server after receiving the application operation instruction. And the proxy edge server can also acquire the data packet to be processed corresponding to the identification of the target application from the central server after receiving the application operation instruction.
S305, the edge server executes operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type.
The implementation of S305 is similar to the implementation of S203 described above, and will not be described herein.
It may be determined based on the above description that the central server in this embodiment may send the application operation instruction to the edge server, and in one possible manner, a package management tool may be included on the edge server, for example, where the package management tool may parse the application operation instruction, so as to obtain an identifier of the target application included in the application operation instruction and an operation type for operating the target application.
The packet management tool may then perform the corresponding operations, for example, in conjunction with the script corresponding to the target application, thereby implementing the corresponding processing on the target application.
It can be understood that in this embodiment, by setting a package management tool and a script corresponding to each application in each edge server, a specific operation execution unit may be sunk into each edge server, so that the center server only sends the identifier and the operation type of the target application, and the each edge server may implement deployment of the application, so as to avoid the problem that the center server has too much pressure caused by the fact that the center server needs to bear a large number of operations.
Meanwhile, because the package management tools are deployed on each edge server, the package management tools can be directly called on each edge server to carry out one-key verification, installation, start-stop, unloading and the like of the application, or the application of any combination can be customized to operate, so that the flexibility of application maintenance is effectively improved.
And it should be further noted that the operation types in the present embodiment may include at least one of the following: the operation type includes at least one of the following: an install operation for a software package, an update operation for a software package, a check operation for a software package, an unload operation for a software package, an update operation for a file, a check operation for a file, a start operation for a service, a stop operation for a service, a reload operation for a service.
S306, obtaining an operation result of the operation, wherein the operation result is used for indicating that the operation is completed or the operation is not completed.
After the edge server performs the corresponding operation on the target application, an operation result of the operation may also be obtained, where the operation result may indicate that the operation is completed, that is, that maintenance of the target application is completed, or the operation result may also indicate that the operation is not completed, that is, that maintenance of the target application is not completed.
S307, the operation result is sent to the center server through the proxy edge server.
The edge server determines that the operation result is only possible, and the operation result can be sent to the central server through the proxy edge server.
It will be appreciated that if the edge server is a proxy edge server, the proxy edge server may send the operation result directly to the central server. If the edge server is a non-proxy edge server, the non-proxy edge server may forward the operation result to the hub server through the proxy edge server.
According to the application processing method, the edge server takes the preset time period as a period, the to-be-processed data packet of at least one candidate application is obtained from the proxy edge server or the center server, and then the to-be-processed data packet is stored locally, so that after an application operation instruction is received, the to-be-processed data packet of the target application can be obtained from the local area quickly and effectively, and the maintenance efficiency of application operation can be improved effectively. And after the operation result of the operation is determined, the operation result is sent to the center server, so that the feedback of the maintenance result of the application can be effectively realized.
Based on the above description, it may be determined that the operation for the application may include an update operation, and in this embodiment, the update for the application may include two different types, where one type is that the central server actively sends an instruction for updating the application to each edge server, for example, a version update of the application currently exists, and then the central server may push the updated application to each edge server to instruct each edge server to update the version of the application.
In another implementation manner, each edge server can perform self-checking on the application version regularly, when it is determined that the application version maintained in the edge server is inconsistent with the application version maintained in the center server, the edge server performs a version update request to the center server, and then the center server instructs the edge server to perform version update.
The following describes this implementation manner of performing self-checking on an application version of an edge server in conjunction with fig. 6, and fig. 6 is a schematic implementation diagram of application version update of the edge server provided in an embodiment of the present application.
Referring to fig. 6, the edge server may obtain the first version identification of each application in the edge server with the second duration as a period. And the edge server may further receive version indication information from the center server with the third duration as a period, wherein the version indication information is used to indicate a second version identifier of each application maintained in the center server.
For any one application, the edge server may compare whether the first version identification and the second version identification are consistent each time the first version identification is obtained and/or each time the second version identification is obtained. If the version update request is consistent, version update is not needed, and if the version update request is inconsistent, the edge server can send the version update request to the center server through the monitoring unit.
In an alternative implementation, in order for the central server to determine which edge server is currently in need of version update, the version update request may include, for example, an identification of the edge server, or may carry the identification of the edge server together for forwarding when the monitoring unit forwards the version update request.
The monitoring unit in this embodiment is also a unit in the CDN, where the monitoring unit is configured to forward a version update request from the edge server to the central server, and by setting the monitoring unit, the pressure of each proxy edge server can be effectively slowed down.
And it will be appreciated that the version update request in this embodiment is used to request an update of the version in the edge server. Therefore, after receiving the version update request, the central server may send an application operation instruction to the edge server, where the application operation instruction is an instruction for instructing the edge server to perform version update of the application, and a specific implementation manner of the application operation instruction is similar to that described above, and is not repeated herein.
Based on the above description, it can be determined that, on-line, the version of an application in the edge server is changed due to misoperation of a person, so that the version of the application on the edge server is inconsistent with the version maintained by the center server, including authority, file md5 and the like, and if the version of the application is not timely corrected, normal operation of a service may be affected. Therefore, in this embodiment, the first version identifier of the application on the edge server is acquired regularly by the edge server, and the second version identifier of the application on the center server is acquired regularly, and by comparing the first version identifier with the second version identifier, the version update request is actively sent to the center server when the first version identifier and the second version identifier are inconsistent, so that inconsistent application versions maintained by the edge server and the center server can be quickly and effectively found, and updating of the application versions can be quickly and effectively realized, so that consistent versions of the application maintained by the edge server and the application version maintained by the center server are ensured, and normal running of the application is ensured.
The foregoing describes an implementation manner on the side of an edge server, and the following describes an implementation manner on the side of a central server with reference to fig. 7, where fig. 7 is a flowchart III of an application processing method provided in an embodiment of the present application.
As shown in fig. 7, the method includes:
s701, the central server generates an application operation instruction, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application.
In this embodiment, the central server may generate the application operation instruction, and in a possible implementation, for example, the central server may correspond to a front-end interface, where the front-end interface may receive information input by the user.
For example, the front-end interface may receive the operation of the user, and then generate a corresponding application operation instruction according to the operation of the user.
Similar to the description of the above embodiment, the role information of each edge server may be stored in the center server, where the role information may be at least one of the following: proxy edge servers and non-proxy edge servers. And the central server can also store application identifiers of candidate applications corresponding to the role information, software packages corresponding to the candidate applications, at least one file corresponding to the software packages, and services corresponding to the candidate applications.
And similar to the above, the operation types include at least one of: an install operation for a software package, an update operation for a software package, a check operation for a software package, an unload operation for a software package, an update operation for a file, a check operation for a file, a start operation for a service, a stop operation for a service, a reload operation for a service.
In one possible implementation manner, for example, the filtering of the edge server may be performed first in the front-end interface according to the role information of the edge server, then, for the filtered edge server, a corresponding operation type is selected on the front-end interface, and after determining that the operation is completed, a corresponding application operation instruction may be generated according to the selection information input by the user.
And it will be appreciated that the foregoing describes the bulk operation of edge servers, that is, one-touch application deployment, one-touch application deletion, one-touch application update, etc., and that the application operation instructions include the identification of these bulk selected edge servers. Or in an alternative implementation manner, if individual operations are required to be performed on some edge servers, the identification of the edge server needing to be performed individually may be input on the front end interface, and then the corresponding operation is selected, so that the generated application operation instruction may be implemented.
The application operation instruction in this embodiment may include an identification of the target application and an operation type of operating the target application.
S703, the center server sends an application operation instruction to the edge server.
After generating the application operation instruction, the central server may send the application operation instruction to the server.
It may be determined based on the description of the above embodiments that the edge servers in this embodiment may include proxy edge servers and non-proxy edge servers.
In one possible implementation manner, if the application operation instruction is sent to the proxy edge server, for example, the application operation instruction includes first indication information, where the first indication information is used to indicate that the application operation instruction is sent to the proxy edge server; or alternatively, the process may be performed,
if the application operation instruction is sent to the non-proxy edge server, the application operation instruction comprises second instruction information, wherein the second instruction information is used for instructing the proxy edge server to forward the application operation instruction to the non-proxy edge server.
Alternatively, it may be determined based on the above description that the identification of the edge server may be included in the application operation instruction, and the proxy edge server may further determine, for example, whether the current application operation instruction is issued to itself or forwarded to the corresponding non-proxy edge server according to the identification of the edge server.
The application processing method provided by the embodiment of the application comprises the following steps: the central server generates an application operation instruction, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application. The center server sends an application operation instruction to the edge server. The center server sends an application operation instruction to the edge server to instruct the edge server to perform corresponding operation on the target application, then the edge server can acquire a data packet to be processed corresponding to the target application according to the identification of the target application, and then the edge server can perform corresponding operation on the target application according to the operation type indicated by the application operation instruction, so that automatic implementation of application maintenance of each edge server is realized.
On the basis of the above embodiment, after sending the application operation instruction to the edge server, the center server may further receive an operation result sent by the edge server through the proxy edge server, where the operation result is used to indicate that the operation is completed or that the operation is not completed. The implementation is similar to that described above and will not be repeated here.
And in one possible implementation manner, if the operation result indicates that the operation is not completed, the central server may further send an application operation instruction to the edge server where the operation is not completed again, and then repeatedly execute the above-described procedure.
And based on the above description, it may be determined that the version update request may be sent to the center server when the edge server determines that the version of the application maintained by the edge server and the version of the application maintained in the center server are inconsistent.
Similar to the above description, the central server may receive the version update request from the edge server forwarded by the monitoring unit, and then the central server may send an application operation instruction to the edge server according to the version update request, where the application operation instruction is used to instruct the edge server to update the version of the application to be updated to be consistent with the version maintained in the central server.
The specific implementation manner is similar to that described in the above embodiments, and will not be repeated here.
Based on the above-described embodiments, a systematic description is made on the application processing method provided by the application implementation in conjunction with fig. 8, and fig. 8 is a schematic implementation diagram of the application processing method provided by the embodiment of the application.
As shown in fig. 8, the configuration information of the full-capacity machine is maintained in the central server, where the configuration information of the full-capacity machine may include, for example, role information (role), candidate application (app), software package (pkg), and file (file) shown in fig. 8, and specific implementation manners of the configuration information of the full-capacity machine are described in the foregoing embodiments and are not repeated herein.
And as shown in fig. 8, the configuration information is synchronized between the central server and the edge server, so that the edge server can acquire the own machine configuration information. Based on the description of the above embodiments, it may be determined that for a non-proxy edge server, it may obtain machine configuration information from a central server at regular time or in real time. And aiming at the non-proxy edge server, acquiring machine configuration information from the proxy edge server at fixed time or in real time so as to realize the synchronization of the machine information between the central server and each edge server.
In one possible implementation, the synchronization of configuration information between the central server and the edge servers may be via the pilar of the saltstack. The saltstack is a centralized management platform of a server infrastructure, has functions of configuration management, remote execution, monitoring and the like, and can execute commands in batches on thousands of servers by deploying the saltstack. And, pilar is a data system in the saltstack for storing dynamic, sensitive data. The configuration information of the machine described above may be stored, for example, in the pilar, and may also be referred to as pilar information.
Referring to fig. 8, when each change is deployed, the central server may issue the task to the corresponding edge server through the task module by using the parameters of the current change and the identification of the edge server, that is, the implementation of sending the application operation instruction by the central server described above.
The edge server then uses the package management tool to call the corresponding service script to execute the command after receiving the application operation instruction. Thus, the operations of deploying, updating, starting and stopping, checking, unloading and the like of the application are realized, and the specific implementation manner of the operations is described in the above embodiments and is not repeated herein.
And referring to fig. 8, the version verification script in the edge server also checks the application version on the edge server at regular time, and when it is determined that the version is inconsistent with the application version maintained on the central server, a version update request can be sent to the monitoring system, then the version update request can be forwarded to the central server, and then the central server can send a version update instruction to the edge server to implement automatic correction of the version.
In summary, in the application processing method provided in the embodiment of the present application, since there are more edge servers of the CDN node, which reach over ten thousand levels, and many services need to be deployed on each edge server, software packages corresponding to each service need to be managed. To share the pressure of the central control and to be logically simpler to use management and implementation. The architecture of center definition and edge validation is designed, and the proxy design is added in the data flow from the center to the edge, so that the proxy can play a role in forwarding task data flow and caching files for downloading of the next layer.
Specifically, in the system design, the central server is deployed in a cluster mode, so that parallel batch processing and issuing multitasking can be realized. And by adding the proxy mode, the edge servers do not need to be directly and completely connected to the central server, and part of non-proxy edge servers can be connected to the proxy edge servers, so that the pressure of the central server can be relieved; and abstracting the related actions of each application into several identical actions in function realization, and providing additional supplementary functions for feature customization for definition of some features. Meanwhile, the center server can know the application which each edge server should deploy and the version of the application deployment, when each change is performed, the operation step can be automatically generated according to the changed content, when the operation is performed, an application operation instruction is sent to the edge server, and a packet management tool on the edge server executes specific operation to enable the application operation instruction to be effective. Therefore, the efficiency is improved, and meanwhile, the management and maintenance of all software packages are convenient.
Therefore, according to the method provided by the embodiment of the application, the part of the edge servers are set as the proxy edge servers, so that the central server only performs interaction collection with the proxy edge servers, and the problem of high central control management pressure is effectively relieved. Meanwhile, by abstracting out the role information of the edge server and the concepts of application, software package, file, service and the like corresponding to each role information, the application operation instruction to be executed by the edge server can be automatically generated through simple selection, and a plurality of configuration management files are not required to be independently written and maintained, so that the complexity of application maintenance is effectively reduced. While at the same time. By abstracting each concept introduced above, the operations of one-key installation, start-stop, verification, unloading and the like of the application on the edge server can be realized through simple selection operation, so that the speed and the efficiency of application management can be effectively improved.
In summary, the technical solutions of the embodiments in the present application can effectively reduce the pressure of the operation and maintenance personnel of the CDN for maintaining different applications on tens of thousands of machines to deploy different versions, on one hand, after unifying the applications for abstract management, the operation steps of each change can be automatically generated, and meanwhile, the application efficiency of deploying the edge server and repairing the edge server can be greatly improved, so that one-key installation deployment, one-key unloading of all applications and the like are realized; on the other hand, the problem of on-line service damage caused by untimely manual processing can be solved by combining with the automatic correction of the monitored version, so that the stability of the CDN is improved and the burden of operation and maintenance personnel is reduced.
Fig. 9 is a schematic structural diagram of an application processing apparatus according to an embodiment of the disclosure. As shown in fig. 9, the application processing apparatus 900 of the present embodiment may include: a receiving module 901, an acquiring module 902 and a processing module 903.
A receiving module 901, configured to receive, by the edge server, an application operation instruction from a central server, where the application operation instruction includes an identifier of a target application and an operation type for operating the target application;
an obtaining module 902, configured to obtain, by using the edge server, a data packet to be processed corresponding to the target application according to the identifier of the target application;
the processing module 903 is configured to execute, by using the edge server according to the operation type, an operation corresponding to the operation type on a to-be-processed data packet corresponding to the target application.
In a possible implementation manner, the plurality of edge servers include a plurality of proxy edge servers and a plurality of non-proxy edge servers, wherein communication connection is established between each non-proxy edge server and each corresponding proxy edge server;
the receiving module 901 is specifically configured to:
if the edge server is a proxy edge server, the proxy edge server receives an application operation instruction sent by the center server; or alternatively, the process may be performed,
And if the edge server is a non-proxy edge server, the non-proxy edge server receives an application operation instruction forwarded by the corresponding proxy edge server from the central server.
In a possible implementation manner, if the edge server is a non-proxy edge server, before the edge server obtains, according to the identifier of the target application, the to-be-processed data packet corresponding to the target application, the obtaining module 902 is further configured to:
the edge server takes a first duration as a period, and obtains a data packet to be processed of the at least one candidate application from the proxy edge server and/or the central server, wherein the at least one candidate application comprises the target application;
the edge server stores the pending data packets of the at least one candidate application locally.
In a possible implementation manner, after the performing the operation corresponding to the operation type on the to-be-processed data packet corresponding to the target application, the obtaining module 902 is further configured to:
acquiring an operation result of the operation, wherein the operation result is used for indicating that the operation is completed or the operation is not completed;
And sending the operation result to the central server through the proxy edge server.
In a possible implementation manner, before the edge server receives the application operation instruction from the central server, the processing module 903 is further configured to:
the edge server takes the second time length as a period to acquire a first version identifier of each application in the edge server;
the edge server takes a third duration as a period, receives version indication information from the center server, wherein the version indication information is used for indicating second version identifiers of the applications maintained in the center server;
and for any application, sending a version update request to a central server according to the first version identifier and the second version identifier.
In a possible implementation manner, the CDN further includes a monitoring unit, and the processing module 903 is specifically configured to:
and if the first version identifier is inconsistent with the second version identifier, the edge server sends a version update request to the central server through a monitoring unit.
In a possible implementation manner, the central server stores role information corresponding to each edge server, where the role information is at least one of the following: proxy edge servers, non-proxy edge servers;
and storing application identifiers of candidate applications corresponding to the role information respectively, software packages corresponding to the candidate applications respectively, at least one file corresponding to the software packages respectively and services corresponding to the candidate applications respectively in the central server.
In a possible implementation manner, the data packet to be processed includes at least one of the following: the software package, the file corresponding to the software package and the data package corresponding to the service;
the operation type includes at least one of the following: an install operation for the software package, an update operation for the software package, a check operation for the software package, an unload operation for the software package, an update operation for the file, a check operation for the file, a start operation for the service, a stop operation for the service, a reload operation for the service.
Fig. 10 is a schematic diagram of an application processing apparatus according to an embodiment of the disclosure. As shown in fig. 10, the application processing apparatus 1000 of the present embodiment may include: a processing module 1001, a transmitting module 1002, and a receiving module 1003.
A processing module 1001, configured to generate an application operation instruction by using a central server, where the application operation instruction includes an identifier of a target application and an operation type for operating the target application;
and a sending module 1002, configured to send the application operation instruction to an edge server by using a central server.
In a possible implementation manner, the plurality of edge servers include a plurality of proxy edge servers and a plurality of non-proxy edge servers, wherein communication connection is established between each non-proxy edge server and each corresponding proxy edge server;
if the edge server is a proxy edge server, the application operation instruction comprises first indication information, wherein the first indication information is used for indicating that the application operation instruction is sent to the proxy edge server; or alternatively, the process may be performed,
and if the edge server is a non-proxy edge server, the application operation instruction comprises second instruction information, wherein the second instruction information is used for indicating the proxy edge server to forward the application operation instruction to the non-proxy edge server.
In a possible implementation manner, after the central server sends the application operation instruction to the edge server, the apparatus further includes: a receiving module 1003;
the receiving module 1003 is specifically configured to receive an operation result sent by the edge server through the proxy edge server, where the operation result is used to indicate that the operation is completed or the operation is not completed.
In a possible implementation manner, the sending module 1002 is further configured to:
and the center server sends version indication information to the edge server with the third duration as a period, wherein the version indication information is used for indicating second version identifiers of the applications maintained in the center server.
In a possible implementation manner, the CDN further includes a monitoring unit, and the sending module 1002 is specifically configured to:
the central server receives a version update request from the edge server, which is forwarded by the monitoring unit;
and the central server sends the application operation instruction to the edge server according to the version update request, wherein the application operation instruction is used for indicating the edge server to update the version of the application to be updated to a target version, and the target version is the version maintained in the central server.
In a possible implementation manner, the central server stores role information corresponding to each edge server, where the role information is at least one of the following: proxy edge servers, non-proxy edge servers;
and storing application identifiers of candidate applications corresponding to the role information respectively, software packages corresponding to the candidate applications respectively, at least one file corresponding to the software packages respectively and services corresponding to the candidate applications respectively in the central server.
In a possible implementation manner, the data packet to be processed includes at least one of the following: the software package, the file corresponding to the software package and the data package corresponding to the service;
the operation type includes at least one of the following: an install operation for the software package, an update operation for the software package, a check operation for the software package, an unload operation for the software package, an update operation for the file, a check operation for the file, a start operation for the service, a stop operation for the service, a reload operation for the service.
The disclosure provides an application processing method and device, which are applied to the field of big data in computer technology to achieve the purpose of improving the maintenance efficiency of applications.
Note that, the head model in this embodiment is not a head model for a specific user, and cannot reflect personal information of a specific user. It should be noted that, the two-dimensional face image in this embodiment is derived from the public data set.
In the technical scheme of the disclosure, the related processes of collecting, storing, using, processing, transmitting, providing, disclosing and the like of the personal information of the user accord with the regulations of related laws and regulations, and the public order colloquial is not violated.
According to embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
According to an embodiment of the present disclosure, the present disclosure also provides a computer program product comprising: a computer program stored in a readable storage medium, from which at least one processor of an electronic device can read, the at least one processor executing the computer program causing the electronic device to perform the solution provided by any one of the embodiments described above.
Fig. 11 illustrates a schematic block diagram of an example electronic device 1100 that can be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 11, the apparatus 1100 includes a computing unit 1101 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM) 1102 or a computer program loaded from a storage unit 1108 into a Random Access Memory (RAM) 1103. In the RAM 1103, various programs and data required for the operation of the device 1100 can also be stored. The computing unit 1101, ROM 1102, and RAM 1103 are connected to each other by a bus 1104. An input/output (I/O) interface 1105 is also connected to bus 1104.
Various components in device 1100 are connected to I/O interface 1105, including: an input unit 1106 such as a keyboard, a mouse, etc.; an output unit 1107 such as various types of displays, speakers, and the like; a storage unit 1108, such as a magnetic disk, optical disk, etc.; and a communication unit 1109 such as a network card, modem, wireless communication transceiver, or the like. The communication unit 1109 allows the device 1100 to exchange information/data with other devices through a computer network such as the internet and/or various telecommunication networks.
The computing unit 1101 may be a variety of general purpose and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 1101 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 1101 performs the respective methods and processes described above, for example, application processing methods. For example, in some embodiments, the application processing method may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 1108. In some embodiments, some or all of the computer programs may be loaded and/or installed onto device 1100 via ROM1102 and/or communication unit 1109. When a computer program is loaded into the RAM 1103 and executed by the computing unit 1101, one or more steps of the application processing method described above may be performed. Alternatively, in other embodiments, the computing unit 1101 may be configured to perform the application processing method by any other suitable means (e.g. by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and pointing device (e.g., a mouse or trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input. The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), and the internet.
The computer system may include a client and a server. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical hosts and VPS service ("Virtual Private Server" or simply "VPS") are overcome. The server may also be a server of a distributed system or a server that incorporates a blockchain.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel or sequentially or in a different order, provided that the desired results of the technical solutions of the present disclosure are achieved, and are not limited herein. The above detailed description should not be taken as limiting the scope of the present disclosure. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present disclosure are intended to be included within the scope of the present disclosure.

Claims (28)

1. An application processing method is applied to a CDN, wherein the CDN includes a central server and a plurality of edge servers, and a plurality of applications are provided in the edge servers, the method includes:
the edge server receives an application operation instruction from a central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
the edge server obtains a data packet to be processed corresponding to the target application according to the identification of the target application;
the edge server executes the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type;
the plurality of edge servers comprise a plurality of proxy edge servers and a plurality of non-proxy edge servers, wherein communication connection is established between each non-proxy edge server and each corresponding proxy edge server;
the edge server receives an application operation instruction from a central server, and the method comprises the following steps:
if the edge server is a proxy edge server, the proxy edge server receives an application operation instruction sent by the center server; or alternatively, the process may be performed,
And if the edge server is a non-proxy edge server, the non-proxy edge server receives an application operation instruction forwarded by the corresponding proxy edge server from the central server.
2. The method of claim 1, wherein if the edge server is a non-proxy edge server, before the edge server obtains the data packet to be processed corresponding to the target application according to the identifier of the target application, the method further comprises:
the edge server takes a first duration as a period, and obtains a data packet to be processed of at least one candidate application from the proxy edge server and/or the central server, wherein the at least one candidate application comprises the target application;
the edge server stores the pending data packets of the at least one candidate application locally.
3. The method according to claim 1 or 2, after the performing the operation corresponding to the operation type on the pending data packet corresponding to the target application, the method further comprises:
acquiring an operation result of the operation, wherein the operation result is used for indicating that the operation is completed or the operation is not completed;
And sending the operation result to the central server through the proxy edge server.
4. The method of claim 1 or 2, the method further comprising, prior to the edge server receiving the application operation instruction from the central server:
the edge server takes the second time length as a period to acquire a first version identifier of each application in the edge server;
the edge server takes a third duration as a period, receives version indication information from the center server, wherein the version indication information is used for indicating second version identifiers of the applications maintained in the center server;
and for any application, sending a version update request to a central server according to the first version identifier and the second version identifier.
5. The method of claim 4, wherein the CDN further comprises a monitoring unit that sends a version update request to a central server based on the first version identification and the second version identification, comprising:
and if the first version identifier is inconsistent with the second version identifier, the edge server sends a version update request to the central server through a monitoring unit.
6. The method according to any one of claims 1-2 and 5, wherein the central server stores role information corresponding to each edge server, and the role information is at least one of the following: proxy edge servers, non-proxy edge servers;
and storing application identifiers of candidate applications corresponding to the role information respectively, software packages corresponding to the candidate applications respectively, at least one file corresponding to the software packages respectively and services corresponding to the candidate applications respectively in the central server.
7. The method of claim 6, wherein the data packet to be processed comprises at least one of: the software package, the file corresponding to the software package and the data package corresponding to the service;
the operation type includes at least one of the following: an install operation for the software package, an update operation for the software package, a check operation for the software package, an unload operation for the software package, an update operation for the file, a check operation for the file, a start operation for the service, a stop operation for the service, a reload operation for the service.
8. An application processing method is applied to a CDN, wherein the CDN includes a central server and a plurality of edge servers, and a plurality of applications are provided in the edge servers, the method includes:
the method comprises the steps that a central server generates an application operation instruction, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
the center server sends the application operation instruction to the edge server;
the plurality of edge servers comprise a plurality of proxy edge servers and a plurality of non-proxy edge servers, wherein communication connection is established between each non-proxy edge server and each corresponding proxy edge server;
if the edge server is a proxy edge server, the application operation instruction comprises first indication information, wherein the first indication information is used for indicating that the application operation instruction is sent to the proxy edge server; or alternatively, the process may be performed,
and if the edge server is a non-proxy edge server, the application operation instruction comprises second instruction information, wherein the second instruction information is used for indicating the proxy edge server to forward the application operation instruction to the non-proxy edge server.
9. The method of claim 8, the method further comprising, after the central server sends the application operation instruction to an edge server:
and receiving an operation result sent by the edge server through the proxy edge server, wherein the operation result is used for indicating that the operation is completed or the operation is not completed.
10. The method of claim 8 or 9, the method further comprising:
and the center server sends version indication information to the edge server with the third duration as a period, wherein the version indication information is used for indicating second version identifiers of all applications maintained in the center server.
11. The method of claim 10, wherein the CDN further comprises a monitoring unit, the central server sending the application operation instructions to an edge server comprising:
the central server receives a version update request from the edge server, which is forwarded by the monitoring unit;
and the central server sends the application operation instruction to the edge server according to the version update request, wherein the application operation instruction is used for indicating the edge server to update the version of the application to be updated to a target version, and the target version is the version maintained in the central server.
12. The method according to any one of claims 8-9 and 11, wherein the central server stores role information corresponding to each edge server, and the role information is at least one of the following: proxy edge servers, non-proxy edge servers;
and storing application identifiers of candidate applications corresponding to the role information respectively, software packages corresponding to the candidate applications respectively, at least one file corresponding to the software packages respectively and services corresponding to the candidate applications respectively in the central server.
13. The method of claim 12, wherein the type of operation comprises at least one of: an install operation for the software package, an update operation for the software package, a check operation for the software package, an unload operation for the software package, an update operation for the file, a check operation for the file, a start operation for the service, a stop operation for the service, a reload operation for the service.
14. An application processing apparatus applied to a content delivery network CDN, the CDN including a central server and a plurality of edge servers, the edge servers having a plurality of applications disposed therein, the apparatus comprising:
The receiving module is used for receiving an application operation instruction from the central server by the edge server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
the acquisition module is used for acquiring the data packet to be processed corresponding to the target application according to the identification of the target application by the edge server;
the processing module is used for executing the operation corresponding to the operation type on the data packet to be processed corresponding to the target application according to the operation type by the edge server;
the plurality of edge servers comprise a plurality of proxy edge servers and a plurality of non-proxy edge servers, wherein communication connection is established between each non-proxy edge server and each corresponding proxy edge server;
the receiving module is specifically configured to:
if the edge server is a proxy edge server, the proxy edge server receives an application operation instruction sent by the center server; or alternatively, the process may be performed,
and if the edge server is a non-proxy edge server, the non-proxy edge server receives an application operation instruction forwarded by the corresponding proxy edge server from the central server.
15. The apparatus of claim 14, if the edge server is a non-proxy edge server, before the edge server obtains the data packet to be processed corresponding to the target application according to the identifier of the target application, the obtaining module is further configured to:
the edge server takes a first duration as a period, and obtains a data packet to be processed of at least one candidate application from the proxy edge server and/or the central server, wherein the at least one candidate application comprises the target application;
the edge server stores the pending data packets of the at least one candidate application locally.
16. The apparatus of claim 14 or 15, after the performing the operation corresponding to the operation type on the pending data packet corresponding to the target application, the obtaining module is further configured to:
acquiring an operation result of the operation, wherein the operation result is used for indicating that the operation is completed or the operation is not completed;
and sending the operation result to the central server through the proxy edge server.
17. The apparatus of claim 14 or 15, the processing module further configured to, prior to the edge server receiving the application operation instruction from the central server:
The edge server takes the second time length as a period to acquire a first version identifier of each application in the edge server;
the edge server takes a third duration as a period, receives version indication information from the center server, wherein the version indication information is used for indicating second version identifiers of the applications maintained in the center server;
and for any application, sending a version update request to a central server according to the first version identifier and the second version identifier.
18. The apparatus of claim 17, wherein the CDN further comprises a monitoring unit, and the processing module is specifically configured to:
and if the first version identifier is inconsistent with the second version identifier, the edge server sends a version update request to the central server through a monitoring unit.
19. The apparatus according to any one of claims 14-15 and 18, wherein the central server stores therein role information corresponding to each edge server, the role information being at least one of: proxy edge servers, non-proxy edge servers;
And storing application identifiers of candidate applications corresponding to the role information respectively, software packages corresponding to the candidate applications respectively, at least one file corresponding to the software packages respectively and services corresponding to the candidate applications respectively in the central server.
20. The apparatus of claim 19, wherein the data packet to be processed comprises at least one of: the software package, the file corresponding to the software package and the data package corresponding to the service;
the operation type includes at least one of the following: an install operation for the software package, an update operation for the software package, a check operation for the software package, an unload operation for the software package, an update operation for the file, a check operation for the file, a start operation for the service, a stop operation for the service, a reload operation for the service.
21. An application processing apparatus applied to a CDN, the CDN including a central server and a plurality of edge servers, the edge servers having a plurality of applications disposed therein, the apparatus comprising:
the processing module is used for generating an application operation instruction by the central server, wherein the application operation instruction comprises an identification of a target application and an operation type for operating the target application;
The sending module is used for sending the application operation instruction to the edge server by the center server;
the plurality of edge servers comprise a plurality of proxy edge servers and a plurality of non-proxy edge servers, wherein communication connection is established between each non-proxy edge server and each corresponding proxy edge server;
if the edge server is a proxy edge server, the application operation instruction comprises first indication information, wherein the first indication information is used for indicating that the application operation instruction is sent to the proxy edge server; or alternatively, the process may be performed,
and if the edge server is a non-proxy edge server, the application operation instruction comprises second instruction information, wherein the second instruction information is used for indicating the proxy edge server to forward the application operation instruction to the non-proxy edge server.
22. The apparatus of claim 21, the apparatus further comprising, after the central server sends the application operation instruction to an edge server: a receiving module;
the receiving module is specifically configured to receive an operation result sent by the edge server through the proxy edge server, where the operation result is used to indicate that the operation is completed or that the operation is not completed.
23. The apparatus of claim 21 or 22, the sending module further to:
and the center server sends version indication information to the edge server with the third duration as a period, wherein the version indication information is used for indicating second version identifiers of the applications maintained in the center server.
24. The apparatus of claim 23, wherein the CDN further comprises a monitoring unit, and the sending module is specifically configured to:
the central server receives a version update request from the edge server, which is forwarded by the monitoring unit;
and the central server sends the application operation instruction to the edge server according to the version update request, wherein the application operation instruction is used for indicating the edge server to update the version of the application to be updated to a target version, and the target version is the version maintained in the central server.
25. The apparatus according to any one of claims 21-22 and 24, wherein the central server stores therein role information corresponding to each edge server, the role information being at least one of: proxy edge servers, non-proxy edge servers;
And storing application identifiers of candidate applications corresponding to the role information respectively, software packages corresponding to the candidate applications respectively, at least one file corresponding to the software packages respectively and services corresponding to the candidate applications respectively in the central server.
26. The apparatus of claim 25, wherein the type of operation comprises at least one of: an install operation for the software package, an update operation for the software package, a check operation for the software package, an unload operation for the software package, an update operation for the file, a check operation for the file, a start operation for the service, a stop operation for the service, a reload operation for the service.
27. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein, the liquid crystal display device comprises a liquid crystal display device,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-7 or claims 8-13.
28. A non-transitory computer readable storage medium storing computer instructions for causing the computer to perform the method of any one of claims 1-7 or claims 8-13.
CN202111137008.9A 2021-09-27 2021-09-27 Application processing method and device Active CN113872808B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111137008.9A CN113872808B (en) 2021-09-27 2021-09-27 Application processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111137008.9A CN113872808B (en) 2021-09-27 2021-09-27 Application processing method and device

Publications (2)

Publication Number Publication Date
CN113872808A CN113872808A (en) 2021-12-31
CN113872808B true CN113872808B (en) 2023-08-08

Family

ID=78991295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111137008.9A Active CN113872808B (en) 2021-09-27 2021-09-27 Application processing method and device

Country Status (1)

Country Link
CN (1) CN113872808B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989113A (en) * 2018-07-24 2018-12-11 网宿科技股份有限公司 A kind of dispositions method and management server of server
WO2020168957A1 (en) * 2019-02-18 2020-08-27 华为技术有限公司 Method for scheduling edge node of content distribution network, and apparatus
CN112653758A (en) * 2020-12-21 2021-04-13 北京百度网讯科技有限公司 Edge node updating method, apparatus, device, medium, and program product
CN112733062A (en) * 2021-01-14 2021-04-30 国网上海市电力公司 Internet of things application management system and method
CN113259161A (en) * 2021-05-11 2021-08-13 商汤国际私人有限公司 Application management method and device, electronic equipment and storage medium
CN113407208A (en) * 2021-06-17 2021-09-17 南方电网数字电网研究院有限公司 Edge device function online configuration method based on remote deployment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989113A (en) * 2018-07-24 2018-12-11 网宿科技股份有限公司 A kind of dispositions method and management server of server
WO2020168957A1 (en) * 2019-02-18 2020-08-27 华为技术有限公司 Method for scheduling edge node of content distribution network, and apparatus
CN112653758A (en) * 2020-12-21 2021-04-13 北京百度网讯科技有限公司 Edge node updating method, apparatus, device, medium, and program product
CN112733062A (en) * 2021-01-14 2021-04-30 国网上海市电力公司 Internet of things application management system and method
CN113259161A (en) * 2021-05-11 2021-08-13 商汤国际私人有限公司 Application management method and device, electronic equipment and storage medium
CN113407208A (en) * 2021-06-17 2021-09-17 南方电网数字电网研究院有限公司 Edge device function online configuration method based on remote deployment

Also Published As

Publication number Publication date
CN113872808A (en) 2021-12-31

Similar Documents

Publication Publication Date Title
CN105468717B (en) Database operation method and device
JP2012141973A (en) Method and computer program for dynamic software version selection
CN113656147B (en) Cluster deployment method, device, equipment and storage medium
US11636016B2 (en) Cloud simulation and validation system
CN112073994A (en) Method and device for over-the-air upgrading, electronic equipment and readable storage medium
CN111290768B (en) Updating method, device, equipment and medium of containerized application system
CN112860282B (en) Cluster plug-in upgrading method, device and server
CN113742031A (en) Node state information acquisition method and device, electronic equipment and readable storage medium
CN112835616A (en) Version upgrading method and device, electronic equipment and storage medium
CN111782254A (en) Method, device, equipment and storage medium for upgrading object
CN110908681A (en) Method and device for upgrading software
CN114064438A (en) Database fault processing method and device
CN111831567B (en) Application test environment configuration method, device, system and medium
CN113872808B (en) Application processing method and device
CN115543423A (en) Method, device and equipment for generating benchmarks and storage medium
CN110445628B (en) NGINX-based server and deployment and monitoring methods and devices thereof
CN104348646A (en) Configuration data processing method, device and system
CN112241332B (en) Interface compensation method and device
CN113296829A (en) Method, device, equipment and computer readable medium for processing service
CN109101253B (en) Management method and device for host in cloud computing system
CN114222001B (en) Edge device, edge device method, edge device system, electronic device and storage medium
CN113094211B (en) Backup data processing method and device
US11086549B2 (en) Just-in-time data migration in a live system
CN112749042B (en) Application running method and device
US20240103992A1 (en) Alert rule manipulation in sync of temporary configuration change

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