WO2022160872A1 - 业务处理方法及装置 - Google Patents

业务处理方法及装置 Download PDF

Info

Publication number
WO2022160872A1
WO2022160872A1 PCT/CN2021/130981 CN2021130981W WO2022160872A1 WO 2022160872 A1 WO2022160872 A1 WO 2022160872A1 CN 2021130981 W CN2021130981 W CN 2021130981W WO 2022160872 A1 WO2022160872 A1 WO 2022160872A1
Authority
WO
WIPO (PCT)
Prior art keywords
user request
business logic
customized
execution process
execution
Prior art date
Application number
PCT/CN2021/130981
Other languages
English (en)
French (fr)
Inventor
佘江宁
Original Assignee
网宿科技股份有限公司
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 网宿科技股份有限公司 filed Critical 网宿科技股份有限公司
Priority to EP21922462.3A priority Critical patent/EP4287023A4/en
Publication of WO2022160872A1 publication Critical patent/WO2022160872A1/zh
Priority to US18/194,616 priority patent/US20230254312A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • 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
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Definitions

  • the embodiments of the present application relate to the technical field of content distribution networks, and in particular, to a service processing method and apparatus.
  • the purpose of the embodiments of the present application is to provide a service processing method and apparatus, which can reduce the impact of service logic delivered by CDN users on the security and performance of CDN nodes, and at the same time can superimpose the existing acceleration and caching advantages of CDN.
  • the embodiments of the present application provide a service processing method, which includes: receiving customized service logic issued by CDN users; receiving user requests corresponding to customized service logics; forwarding customized service logic and user requests to a
  • the restricted contents of the restricted namespace include accessing CDN system files, calling key system interfaces, and available system resources; processing and responding to users according to customized business logic in the execution process ask.
  • the embodiment of the present application further provides a service processing device, including: a first receiving module, configured to receive customized service logic issued by a CDN user; a second receiving module, configured to receive a user request corresponding to the customized service logic;
  • the forwarding module is used to forward customized business logic and user requests to the execution process of a restricted namespace, where the restricted namespace includes access to CDN system files and calls to key system interfaces, as well as the systems that can be used Resource; processing module, used to process and respond to user requests according to customized business logic in the execution process.
  • Embodiments of the present application further provide a server, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by at least one processor.
  • One processor executes, so that at least one processor can execute the above-mentioned service processing method.
  • Embodiments of the present application further provide a computer-readable storage medium storing a computer program, and when the computer program is executed by a processor, the foregoing service processing method is implemented.
  • the embodiment of the present application receives the customized business logic issued by the CDN user, receives the user request corresponding to the customized business logic, and forwards the customized business logic and the user request to the execution process of a restricted namespace, Handles and responds to user requests according to custom business logic that runs in-process.
  • the custom business logic running in the execution process of the restricted namespace cannot override its authority Doing things other than business cannot occupy system resources beyond the limits of the system, which can reduce the impact of customized business logic on the security and stability of CDN nodes; The overhead is smaller, so implementing this scheme in the execution process can make the resource usage of CDN nodes more fully.
  • forwarding the customized business logic and user request to the execution process of a restricted namespace includes: forwarding the customized business logic and user request to the execution process via the management process, wherein the management process is used to manage the execution process in the restricted namespace.
  • Execution process at least one execution process. Load the corresponding code and configuration file into an execution process according to the user's request, and then the management process forwards the user request to the execution process. Since the CDN node service process only needs to forward the request related to the customized business logic, it does not need to obtain the corresponding It does not need to manage the execution process in the restricted namespace, so it can reduce the burden of the CDN node service process and improve the operation efficiency of the CDN node service process.
  • receiving the user request corresponding to the customized business logic includes: the CDN node service process forwards the user request to the management process according to the filter condition requested by the user, wherein the filter condition includes the domain name requested by the user, the customized request header or the customized URL parameter , the CDN node service process and the management process interact through inter-process communication.
  • the filter condition includes the domain name requested by the user, the customized request header or the customized URL parameter
  • the CDN node service process and the management process interact through inter-process communication.
  • forwarding the customized business logic and the user request to the execution process of a restricted namespace includes: the management process invokes the corresponding customized business logic according to the user request, and forwards the user request and the customized business logic to the execution process.
  • the CDN node service process can only need to forward the user request to the management process, and does not need to call the customized business logic, which improves the operation efficiency of the CDN node service process.
  • the method further includes: before receiving the user request, forwarding the customized business logic to one of the execution processes; forwarding the customized business logic and the user request to the execution process of a restricted namespace, including: forwarding the user request to the execution process where the custom business logic resides. Since the customized business logic runs before the user request is received, the user request can be processed and responded to immediately after the user request is received, which improves the processing and response speed of the user request.
  • using the management process to forward the customized business logic to one of the execution processes includes: before receiving the user request, using the management process to forward multiple customized business logics to one of the execution processes One; processing and responding to user requests according to customized business logic in the execution process, including: in the case of more than one forwarded user request, dynamically switching different customized business logics according to different user requests, and processing and responding to the user request . That is to say, if different user requests are forwarded to the execution process at the same time, the execution process can load multiple business codes at the same time, dynamically switch different business codes according to different user requests, and reduce the idle waiting time of the execution process.
  • the management process is also used to adjust the load of execution processes in different CDN nodes.
  • the execution processes of different nodes can be balanced in load, and the service failure caused by the excessive load of a single CDN node can be avoided.
  • CDN node service process, management process and execution process are deployed in the same CDN node or node cluster.
  • the method further includes: if the execution time of the user request in the execution process is greater than a preset time threshold, ending the execution process where the user request is located.
  • the execution process where the business logic is located is terminated, which can prevent the corresponding execution process from occupying the resources of the CDN node all the time, resulting in the monopoly of resources and ensure the normal operation of the CDN node.
  • an execution process is created; the created execution process is used to execute the updated custom business logic; the custom business logic before the update The execution process in which it is located is cancelled after the execution process ends. That is to say, after all business code updates are delivered to the CDN node, if the old business logic is being executed, a new execution process will be started, the new business code will be loaded, and newly received requests will be handed over to this process for processing. ; the old process destroys itself until the existing request is processed.
  • execution process contains a dynamic parser that supports dynamic interpretation of scripting languages.
  • the customized business logic includes an execution script and a corresponding configuration file issued by the CDN user.
  • the execution process forwards the user request back to the CDN node service process.
  • the execution process can choose to forward the request back to the CDN service process, so that the acceleration and caching effects of the CDN can be superimposed.
  • FIG. 1 is a schematic flowchart of a service processing method provided by a first embodiment of the present application
  • FIG. 2 is a schematic flowchart of a service processing method provided by a second embodiment of the present application.
  • Fig. 3 is the principle frame diagram of the service processing method provided by the second embodiment of the present application.
  • FIG. 4 is an exemplary diagram of a service processing method provided by a second embodiment of the present application.
  • FIG. 5 is a schematic flowchart of a service processing method provided by a third embodiment of the present application.
  • FIG. 6 is a schematic structural diagram of a module of a service processing apparatus provided by a fourth embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a server provided by a fifth embodiment of the present application.
  • the first embodiment of the present application relates to a service processing method.
  • receiving customized service logic issued by a CDN user receiving a user request corresponding to the customized service logic, and forwarding the customized service logic and user request to a restricted namespace for execution
  • the customized business logic runs in the execution process of the restricted namespace, and the restricted namespace restricts access to CDN system files and calls to key system interfaces, as well as the maximum use of resources, the customized business logic cannot exceed its authority to do business. In this way, the impact of customized business logic on the security of CDN nodes can be reduced.
  • implementing this solution in the execution process can make the resources of CDN nodes more fully utilized, and can also superimpose the existing acceleration and caching advantages of CDN.
  • the execution body of the service processing method provided by the embodiment of the present application includes but is not limited to a CDN node, wherein the CDN node may be implemented by a cluster composed of one CDN server or multiple CDN servers, and other Deploy on a non-CDN cluster.
  • FIG. 1 The specific flow of the service processing method provided by the embodiment of the present application is shown in FIG. 1 , and includes the following steps:
  • S101 Receive customized business logic delivered by a CDN user.
  • the customized business logic when the CDN user delivers the customized business logic, the customized business logic can be written through the service platform connected with the CDN node, and then the compiled customized business logic can be sent to the CDN node. Before the issuing action of the CDN user, it may also include the action of writing customized business logic, which may be written by the CDN user or written by a third party and delivered to the CDN user according to the preset script language of the online editing platform, rather than by the CDN user.
  • CDN service providers write their own.
  • the customized business logic may include a code file and corresponding configuration information, wherein the code file describes the business processing logic in the form of code, and the configuration information may include execution conditions or startup parameters of the code file, and the like. That is, the code script written by the user can be run in the CDN node, which supports dynamic loading and does not depend on version upgrades, so that users can write their own business logic.
  • the CDN node After the CDN node receives the customized business logic delivered by the CDN user, it can save it in the specified directory.
  • the CDN node may store the configuration information together with the code file in a specified directory, or may store the configuration information in a directory specially storing configuration information.
  • the language used for the customized business logic is not limited, and can support scripting languages or other high-level languages.
  • S102 Receive a user request corresponding to the customized business logic.
  • the user request refers to a request corresponding to customized business logic, and may specifically be a request of an application layer protocol, such as an http or https request.
  • the CDN node When judging whether the request corresponds to the customized business logic, the CDN node can judge according to the execution conditions of the customized business logic. Specifically, it can judge according to the requested domain name and/or preset trigger conditions. When the request corresponds to the domain name of the customized business logic and/or when the preset trigger conditions match, it is determined that a user request corresponding to the customized business logic is received.
  • the specific execution conditions can be set by the CDN user in the customized business logic according to actual needs, and there is no specific limitation here.
  • the CDN node when receiving the request with the domain name "www.A.com", the CDN node can determine that the request is a user request corresponding to the customized business logic; For example, if the customized business logic is the customized business logic of the request for the A domain name and the requested IP address is the IP address of the Shanghai area, the received domain name is "www.A.com" and the requested IP address is the IP address of the Shanghai area , the CDN node can determine that the request is a user request corresponding to the customized service logic.
  • S103 Forward the customized business logic and user request to the execution process of a restricted namespace, where the restricted namespace includes access to CDN system files, invocation of key system interfaces, and available system resources.
  • accessing CDN system files includes reading and writing system files of CDN nodes
  • key system interfaces include system APIs that affect the operation of CDN node service processes, such as stopping the service process, disconnecting network connections, and other systems that can affect the running of CDN node service processes. API. Because the restricted namespace restricts access to CDN system files and calls to key system interfaces, as well as system resources that can be used, and the execution process runs in the restricted namespace, accordingly, the execution process also restricts access to CDN system files and invocation of key The system interface cannot exceed the system limit and occupy system resources.
  • the CDN node may forward the customized business logic and user request to the execution process of the restricted namespace through the CDN node service process.
  • S104 Process and respond to the user request according to the customized business logic in the execution process.
  • the execution process returns the processing result to the CDN node service process, and the CDN node service process responds to the user request.
  • the users here generally refer to individual users, while the CDN users generally refer to enterprise users. Since the execution process does not access the contents of the CDN system file, the result of the execution process is returned to the CDN node service process, and the CDN node service process responds according to the processing result, which can be achieved while ensuring the security of the CDN node service process. Corresponding customized services for CDN users.
  • the execution process when processing the user request, may be directly used to run the customized business logic, or a thread created by the execution process may be used to execute the customized business logic. It can be understood that, by loading and running custom business logic through the thread of the executing process, multiple custom business logic can be put into a thread in the same process (for example, each custom business logic as one of the code segments of the thread). ), thus reducing the number of processes in the restricted namespace, which in turn reduces the memory occupied by the restricted namespace.
  • the execution process is a dynamic parser, which supports dynamic interpretation of high-level languages.
  • the CDN node can use the execution process to compile the code file of the customized business logic in real time to obtain executable code that can be run on the CDN node, and then run the executable code to process the user request.
  • the customized business logic includes an execution script and a corresponding configuration file issued by the CDN user, that is, the code file of the customized business logic is in the form of a script.
  • the custom business logic when running custom business logic, in addition to the traditional method of loading custom business logic into the CDN node service process to run, the custom business logic can also be run in a container. Since the virtualization architecture of the container can be well isolated from other service processes on the CDN server, the security of the CDN node can be well guaranteed; however, the container will occupy more resources of the CDN server. If the container is used to run Customizing business logic will increase the performance overhead of CDN nodes.
  • the customized service logic is run in the execution process of the restricted namespace, which can also ensure the security of the CDN node;
  • the service processing method provided by the embodiment of the present application can improve the processing efficiency of the CPU, thereby improving the overall service performance of the CDN node.
  • the business processing method by receiving the customized business logic issued by the CDN user, receiving the user request corresponding to the customized business logic, and forwarding the customized business logic and the user request to the execution process of a restricted namespace, according to Execute custom business logic processing that runs in-process and responds to user requests.
  • the custom business logic running in the execution process of the restricted namespace cannot override its authority Do things other than business, so that the impact of customized business logic on the security and stability of CDN nodes can be reduced; in addition, compared with the method of using containers, because the process has less overhead on resources, it is implemented in the execution process. This solution can improve the overall service performance of CDN nodes.
  • the second embodiment of the present application relates to a service processing method.
  • the user request is forwarded to the execution process of the restricted namespace through the management process, and the management process and the execution process can be understood as the Processes within edge apps.
  • the edge application is an operating environment independent of the CDN node service process, and has resource isolation from the CDN node service process, and the processes do not affect each other. Edge applications and CDN node service processes can be deployed on the same machine or independently.
  • the request data is transferred from the CDN node service process to the edge application for processing. For example, the edge application starts a listening service to receive requests for triggering events.
  • edge applications After receiving the triggering events forwarded by the CDN node service process, such as user requests, according to the user's request Load the code and configuration file, and start the edge application to run.
  • the edge application runtime environment compiles and executes the customized business logic corresponding to the user request in real time.
  • the processing result is returned to the CDN node service process to complete the subsequent process, so as to reuse the existing advantages of CDN acceleration and caching.
  • edge applications can adopt on-demand startup mode instead of non-resident mode to improve resource utilization.
  • Edge applications run in a sandbox environment, which can limit the resources used by the process, such as CPU, memory, etc.
  • the running environment of edge applications includes but is not limited to sandboxes, and can also be containers or virtual machines.
  • FIG. 2 The specific flow of the service processing method provided by the embodiment of the present application is shown in FIG. 2 , and includes the following steps:
  • S201 Receive customized business logic delivered by a CDN user.
  • S201 is the same as S101 in the first embodiment, and reference may be made to the relevant description of the first embodiment for details. In order to avoid repetition, details are not repeated here.
  • the CDN node service process forwards the user request to the management process of the edge application according to the filter condition requested by the user, wherein the filter condition includes the domain name requested by the user, the custom request header or the custom URL parameter, and the CDN node service process and the management process pass through Inter-process communication mode interaction.
  • the CDN node service process may make judgments based on the domain name requested by the user, the custom request header or custom URL parameters, and the domain name and/or trigger conditions of the business logic, and forward the user request that meets the requirements to the management process.
  • the CDN node service process, management process and execution process are deployed in the same CDN node or node cluster.
  • the management process is used to manage the execution process in the restricted namespace, and the execution process may be one or multiple.
  • the management process forwards the user request and customized business logic to one of the execution processes.
  • forwarding the customized business logic to the execution process refers to forwarding the customized business logic file to the execution process.
  • the management process selects the first execution process to load the code and configuration file according to the user request, and forwards the request to the execution process to process business logic.
  • the management process can increase or decrease the number of the first execution process. When increasing or decreasing the number of the execution process, it can be increased when the load of the existing execution process has reached the first preset threshold. When the load of a certain execution process is low Decrease at the second preset threshold. For example, if the load of all execution processes in the restricted namespace reaches the first preset threshold (for example, 80%), a new execution process is added; if the load of an execution process in the restricted namespace is lower than The second preset threshold (for example, 10%) ends the execution process.
  • the first preset threshold for example, 80%
  • the second preset threshold for example, 10%
  • an execution process is created; the created execution process is used to execute the updated custom business logic; the custom business logic before the update
  • the execution process where the business logic resides is cancelled after the execution process ends. That is to say, if an updated customized business logic is received during the execution of the old customized business logic, the management process can add a new execution process, load the new business code, and forward the received new request for the business So far, the new execution process has been processed, and the old execution process will continue to process the received requests until it is destroyed by itself after all processing.
  • the management process is also used to balance the load of the execution processes in different CDN nodes, that is, if the execution processes in the restricted namespace of the current CDN node have reached the second preset load, and the user requests a new CDN node for the current CDN node.
  • the user request is forwarded to the execution process in the restricted namespace of another CDN node, so that the execution process of the other CDN node can run the customized business logic to process the user request.
  • the second preset load can be set according to actual needs, for example, 80%, 85%, or 90%, and the specific value of the second preset load can be the same or different from that of the first preset load.
  • the execution processes of different nodes can be balanced in load, and the service failure caused by the excessive load of a single CDN node can be avoided.
  • the existing load balancing technology of CDN can be used to realize that the process on each node is at a reasonable level. For example, if the execution process of a node is relatively idle, the load balancing function of the CDN can be used to forward the request to the node for processing.
  • the user requests that meet the requirements are forwarded to the management process, so that the user requests can be responded to by customized business logic, and the customized function of CDN can be realized.
  • S203 The management process of the edge application calls the corresponding customized business logic according to the user request, and forwards the user request and the customized business logic to the execution process of the edge application.
  • the management process runs outside the restricted namespace.
  • the corresponding customized business logic is called from the specified location in the CDN node according to the user request, and the called customized business logic and user request are forwarded into the execution process of the restricted namespace.
  • the CDN node service process can only need to forward the user request to the management process, and does not need to call the customized business logic, which improves the operation efficiency of the CDN node service process.
  • S204 Process and respond to the user request according to the customized business logic in the execution process.
  • S204 is the same as S104 in the first embodiment.
  • the management process is used to forward the response content and customized business logic corresponding to the user request to the execution process.
  • the CDN node uses the management process to forward the hit cache file together with the customized business logic to the execution process, so that the execution process can process the cache file accordingly, so as to realize the corresponding Customize business logic. Since the restricted namespace does not have permission to access the CDN system files, forwarding the response content corresponding to the user request together with the customized business logic to the execution process in the restricted namespace enables the execution process to process the response content accordingly , so as to realize the corresponding customized business logic.
  • the CDN node service process performs the back-to-source.
  • the CDN node service process instead of using the CDN node's cache process to back and forth to the source, can make the cache process no longer coupled with the business and improve the operation efficiency of the cache process.
  • the execution process in which the user request is located is terminated.
  • the preset time threshold can be set according to actual needs, and there is no specific limitation here.
  • the execution process where the customized business logic is located is terminated, which can prevent the corresponding execution process from occupying the resources of the CDN node all the time, resulting in the monopoly of resources and ensure the normal operation of the CDN node.
  • FIG. 3 is a schematic framework diagram of a service processing method provided by an embodiment of the present application.
  • the CDN node service process and the management process interact through inter-process communication, and the management process is located outside the restricted namespace.
  • the CDN node service process forwards the user request that meets the requirements to the management process, and the management process Then forward the user request and business logic to the execution process of the restricted namespace, process the user request, the execution process returns the result of processing the user request to the management process, and the management process returns the processing result to the CDN node service.
  • the CDN node service process responds to user requests.
  • FIG. 4 is an exemplary diagram of a service processing method provided by an embodiment of the present application.
  • the dynamic execution process includes a management process and an execution process (not shown in the figure). Specifically, 1.
  • the user request hits the cache in the CDN node; 2.
  • the CDN node service process forwards the response content corresponding to the user request to the management process of the dynamic execution process, and the management process forwards the response request, customized business logic and response content to The execution process performs processing, and after processing, the execution process returns the processing result to the management process; 3.
  • the management process returns the processing result to the CDN node service process; 4.
  • the CDN node service process responds to the user with the processing result.
  • FIG. 4 takes the execution stage of the request response after hitting the cache as an example for illustration. In fact, the execution process of other execution stages is similar to the execution process of FIG. 4 , you can refer to the execution process of FIG. Describe them one by one.
  • the operation of the customized business logic after receiving the user request that is, after the user request is received, the customized business logic is run to process the user request, which will cause a certain response delay.
  • the response delay caused by running the custom business logic after receiving the request is basically negligible compared with the time required for the calculation amount of the custom business logic.
  • the management process forwards the user request and customized business logic to the execution process, because the CDN node service
  • the process only needs to forward the request related to the customized business logic, and does not need to obtain and send the corresponding customized business logic, nor does it need to manage the execution process in the restricted namespace, so it can reduce the burden of the CDN node service process and improve the The operating efficiency of the CDN node service process.
  • the third embodiment of the present application relates to a service processing method.
  • the management process before receiving the user request, starts the monitoring service to wait for receiving the user request, and after receiving the user request, starts the monitoring service according to the user request.
  • An execution process or an existing execution process loads the corresponding business code and configuration, and then forwards the user request to the execution process where the customized business logic is located.
  • FIG. 5 The specific flow of the service processing method provided by the embodiment of the present application is shown in FIG. 5 , and includes the following steps:
  • S301 Receive customized business logic delivered by a CDN user.
  • S301 is the same as S101 in the first embodiment.
  • S302 Before receiving the user request, use the management process to forward the customized business logic to one of the execution processes.
  • the CDN node before receiving a user request, the CDN node first uses the management process to forward the customized business logic to one of the execution processes to run.
  • the CDN node service process forwards the user request to the management process according to the filter condition requested by the user, wherein the filter condition includes the domain name requested by the user, a custom request header or a custom URL parameter, and the CDN node service process and the management process communicate through inter-process communication way to interact.
  • S303 is the same as S202 in the second embodiment.
  • S304 Use the management process to forward the user request to the execution process where the customized business logic is located.
  • the management process Since there are multiple execution processes, and the management process is responsible for managing multiple execution processes and running customized business logic in one of the execution processes after receiving a user request, after receiving the user request, the management process can forward the user request to In the execution process where the custom business logic is located.
  • the management process can be used to forward multiple customized business logics to one of the execution processes, and in the case that the forwarded user request is more than one, it can be dynamically switched according to different user requests Different custom business logic to process and respond to user requests. That is to say, if different user requests are forwarded to the execution process at the same time, the execution process can load multiple business codes at the same time, dynamically switch different business codes according to different user requests, and reduce the idle waiting time of the execution process.
  • the corresponding business code and related configuration are loaded into the execution process according to the user request, and then the user request is forwarded to the corresponding execution process; if the execution process has After loading the corresponding business code, the execution process switches to the corresponding business code first, and then processes the received business request.
  • S305 Process and respond to the user request in the execution process according to the customized business logic.
  • S305 is the same as S204 in the second embodiment.
  • the execution of the customized business logic is triggered by starting a monitoring service to receive the user request forwarded by the CDN node service process.
  • the edge application can regularly execute related customized business logic, such as regularly summarizing CDN logs and reporting.
  • the management process before receiving the user request, the management process is used to forward the customized business logic to one of the execution processes, and after receiving the user request, the user request is forwarded to the customized service through the management process.
  • the execution process where the business logic is located. Since the customized business logic runs before the user request is received, the user request can be processed and responded to immediately after the user request is received, which improves the processing and response speed of the user request.
  • step division of the above various methods is only for the purpose of describing clearly. During implementation, it can be combined into one step or some steps can be split and decomposed into multiple steps, as long as they contain the same logical relationship, they are all within the protection scope of this patent. ;Adding insignificant modifications to the algorithm or process or introducing insignificant designs, but not changing the core design of the algorithm and process are all within the scope of protection of this patent.
  • the fourth embodiment of the present application relates to a service processing apparatus 400. As shown in FIG. 6, it includes a first receiving module 401, a second receiving module 402, a forwarding module 403, and a processing module 404. The functions of each module are described in detail as follows:
  • the first receiving module 401 is used for receiving customized business logic issued by CDN users;
  • the second receiving module 402 is configured to receive a user request corresponding to the customized business logic
  • the forwarding module 403 is configured to forward customized business logic and user requests to the execution process of a restricted namespace, wherein the restricted contents of the namespace include accessing CDN system files, calling key system interfaces, and available system resources ;
  • the processing module 404 is configured to process and respond to user requests according to the customized business logic in the execution process.
  • forwarding module 403 is also used for:
  • the customized business logic and user request are forwarded to the execution process via the management process, wherein the management process is used to manage the execution process in the restricted namespace, and there is at least one execution process.
  • the second receiving module 402 is also used for:
  • the CDN node service process forwards the user request to the management process according to the filter conditions requested by the user, wherein the filter conditions include the domain name requested by the user, custom request headers or custom URL parameters, and the CDN node service process and the management process interact through inter-process communication .
  • forwarding module 403 is also used for:
  • the management process calls the corresponding customized business logic according to the user request, and forwards the user request and the customized business logic to the execution process.
  • the service processing apparatus 400 provided in the embodiment of the present application further includes a pre-operation module, and the pre-operation module is used for:
  • the forwarding module 403 is also used for:
  • the pre-running module is specifically configured to use the management process to forward a plurality of customized business logics to one of the execution processes before receiving the user request; the processing module 404 is specifically configured to forward the user request greater than In one case, different customized business logics are dynamically switched according to different user requests, and the user requests are processed and responded to.
  • management process is also used to balance the load of execution processes in different CDN nodes.
  • CDN node service process the management process and the execution process are deployed in the same CDN node or node cluster.
  • the service processing device 400 provided in the embodiment of the present application also includes a timeout module, wherein the timeout module is used for:
  • execution process is a dynamic parser, which supports dynamic interpretation of high-level languages.
  • the customized business logic includes an execution script and a corresponding configuration file issued by the CDN user.
  • the forwarding module is also used to forward the user request to the newly created execution process when the custom business logic before the update is currently in the execution process, and the newly created execution process.
  • Customized business logic for executing the update; the execution process where the custom business logic before the update is located is cancelled after the execution process ends. Determine whether the current execution process has a transition stage between the new and the old business, and if so, forward all new incoming requests to the execution process containing the new business code to ensure a smooth transition from the old business logic to the new business logic.
  • this embodiment is a device embodiment corresponding to the foregoing embodiment, and this embodiment can be implemented in cooperation with the foregoing embodiment.
  • the related technical details mentioned in the foregoing embodiment are still valid in this embodiment, and are not repeated here in order to reduce repetition.
  • the relevant technical details mentioned in this embodiment can also be applied to the foregoing embodiments.
  • a logical unit may be a physical unit, a part of a physical unit, or multiple physical units.
  • a composite implementation of the unit in order to highlight the innovative part of the present application, this embodiment does not introduce units that are not closely related to solving the technical problem raised by the present application, but this does not mean that there are no other units in this embodiment.
  • the fifth embodiment of the present application relates to a server. As shown in FIG. 7 , it includes at least one processor 501; The instructions are executed by the processor 501, and the instructions are executed by the at least one processor 501, so that the at least one processor 501 can execute the above-mentioned service processing method.
  • the memory 502 and the processor 501 are connected by a bus, and the bus may include any number of interconnected buses and bridges, and the bus connects one or more processors 501 and various circuits of the memory 502 together.
  • the bus may also connect together various other circuits, such as peripherals, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein.
  • the bus interface provides the interface between the bus and the transceiver.
  • a transceiver may be a single element or multiple elements, such as multiple receivers and transmitters, providing a means for communicating with various other devices over a transmission medium.
  • the data processed by the processor 501 is transmitted on the wireless medium through the antenna, and further, the antenna also receives the data and transmits the data to the processor 501 .
  • Processor 501 is responsible for managing the bus and general processing, and may also provide various functions including timing, peripheral interface, voltage regulation, power management, and other control functions.
  • memory 502 may be used to store data used by processor 501 in performing operations.
  • the sixth embodiment of the present application relates to a computer-readable storage medium storing a computer program.
  • the above method embodiments are implemented when the computer program is executed by the processor.
  • the aforementioned storage medium includes: U disk, mobile hard disk, Read-Only Memory (ROM, Read-Only Memory), Random Access Memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program codes .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例涉及内容分发网络技术领域,公开了一种业务处理方法,包括:接收CDN用户下发的定制业务逻辑;接收与所述定制业务逻辑对应的用户请求;转发所述定制业务逻辑与所述用户请求至一个受限命名空间的执行进程中,其中,所述受限命名空间被限制的内容包括访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源;在所述执行进程内依据所述定制业务逻辑,处理并响应所述用户请求。

Description

业务处理方法及装置
交叉引用
本申请基于申请号为“202110118441.1”、申请日为2021年01月28日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此以引入方式并入本申请。
技术领域
本申请实施例涉及内容分发网络技术领域,特别涉及一种业务处理方法及装置。
背景技术
传统的CDN定制业务在开发上线的过程中,整个业务交付流程非常长,投入的人力也较多,已经无法满足互联网产业的发展,客户对业务交付的时效性和灵活性要求越来越高,因此衍生出了一种开放式的交付方式——可编程CDN,由CDN用户下发业务代码后在CDN上运行。
目前,在运行CDN用户下发的业务代码时,通常是直接加载至CDN节点服务进程来运行,然而,由于CDN用户下发的业务代码为第三方代码,在CDN节点服务进程运行时可以越权做许多业务之外的事情,因此这种方法对CDN节点的安全性影响较大。
发明内容
本申请实施例的目的在于提供一种业务处理方法及装置,可以减少CDN用户下发的业务逻辑对CDN节点安全和性能的影响,同时可以叠加CDN既有的加速和缓存优势。
为解决上述技术问题,本申请的实施例提供了一种业务处理方法,包括:接收CDN用户下发的定制业务逻辑;接收与定制业务逻辑对应的用户请求;转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,其中,受限命名空间被限制的内容包括访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源;在执行进程内依据定制业务逻辑处理并响应用户请求。
本申请的实施例还提供了一种业务处理装置,包括:第一接收模块,用于接收CDN用户下发的定制业务逻辑;第二接收模块,用于接收与定制业务逻辑对应的用户请求;转发模块,用于转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,其中,受限命名空间 被限制的内容包括访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源;处理模块,用于在执行进程内依据定制业务逻辑处理并响应用户请求。
本申请的实施例还提供了一种服务端,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的业务处理方法。
本申请的实施例还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述的业务处理方法。
本申请实施例相对于相关技术而言,通过接收CDN用户下发的定制业务逻辑,接收与定制业务逻辑对应的用户请求,转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,根据执行进程内运行的定制业务逻辑处理并响应用户请求。由于定制业务逻辑是在受限命名空间的执行进程中运行的,而受限命名空间限制访问CDN系统文件和调用系统关键接口,因此在受限命名空间的执行进程中运行的定制业务逻辑不能越权做业务之外的事情,也无法超过系统的限制占用系统资源,从而可以减少定制业务逻辑对CDN节点的安全性和稳定性的影响;另外,与采用容器的方法相比,由于进程对资源的开销更小,因此在执行进程中实现该方案可以使CDN节点的资源使用更充分。
另外,转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,包括:将定制业务逻辑与用户请求经由管理进程转发至执行进程,其中,管理进程用于管理受限命名空间内的执行进程,执行进程至少为一个。根据用户请求加载相应的代码和配置文件到一个执行进程,再由管理进程将用户请求转发至执行进程,由于CDN节点服务进程只需要将与定制业务逻辑相关的请求转发即可,不需要获取相应的定制业务逻辑并发送,也不需要管理受限命名空间内的执行进程,因此可以减少CDN节点服务进程的负担,提高CDN节点服务进程的运行效率。
另外,接收与定制业务逻辑对应的用户请求,包括:CDN节点服务进程根据用户请求的过滤条件,将用户请求转发至管理进程,其中,过滤条件包括用户请求的域名、定制请求头或定制URL参数,CDN节点服务进程与管理进程通过进程间通讯方式交互。通过用户请求的过滤条件,将符合要求的用户请求转发至管理进程,可以使用户请求得到定制业务逻辑的响应,实现CDN的定制化功能。
另外,转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,包括:管理进程依据用户请求,调取对应的定制业务逻辑,将用户请求和定制业务逻辑转发至执行进程中。通过管理进程调取对应的定制业务逻辑,可以使CDN节点服务进程只需要将用户请求转发至 管理进程即可,不需要进行定制业务逻辑的调取,提高了CDN节点服务进程的运行效率。
另外,方法还包括:在接收到用户请求之前,将定制业务逻辑转发至执行进程中的其中一个;转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,包括:将用户请求转发至定制业务逻辑所在的执行进程中。由于定制业务逻辑在接收到用户请求之前运行,因此在接收到用户请求后,可以立即对用户请求进行处理和响应,提高了用户请求处理和响应的速度。
另外,在接收到用户请求之前,利用管理进程将定制业务逻辑转发至执行进程中的其中一个,包括:在接收到用户请求之前,利用管理进程将多个定制业务逻辑转发至执行进程中的其中一个;在执行进程内依据定制业务逻辑,处理并响应用户请求,包括:在转发的用户请求大于一个的情况下,根据不同的用户请求动态切换不同的定制业务逻辑,处理并响应所述用户请求。也就是说,若同时有不同的用户请求转发至执行进程,执行进程可以同时加载多份业务代码,根据不同的用户请求动态切换不同的业务代码,减少执行进程空闲等待的时间。
另外,管理进程还用于调整不同CDN节点内的执行进程的负载。通过管理进程调整不同节点的执行进程的负载,可以使不同节点的执行进程可以得到负载的均衡,避免单一CDN节点负载过大而造成服务故障。
另外,CDN节点服务进程、管理进程和执行进程部署在同一个CDN节点或节点集群内。
另外,方法还包括:若用户请求在执行进程内的执行时间大于预设时间阈值,则结束用户请求所在的执行进程。在用户请求的执行时间大于预设时间阈值时,结束业务逻辑所在的执行进程,可以避免相应的执行进程一直占用CDN节点的资源,造成资源独占的情况,保证CDN节点的正常运行。
另外,在接收到更新的定制业务逻辑后,若更新前的定制业务逻辑当前处于执行过程中,则创建一个执行进程;创建的执行进程用于执行更新的定制业务逻辑;更新前的定制业务逻辑所在的执行进程在执行过程结束后进行撤销。也就是说,所有的业务代码更新下发到CDN节点后,若旧的业务逻辑正在执行中,则会新启一个执行进程,加载新的业务代码,新收到的请求都交由该进程处理;旧进程直至已有请求处理完毕后自行销毁。
另外,执行进程包含动态解析器,支持脚本语言的动态解释。
另外,定制业务逻辑包括CDN用户下发的执行脚本和对应的配置文件。
另外,从,处理并响应用户请求后,执行进程将用户请求转发回CDN节点服务进程。当业务处理完后,执行进程可以选择将请求转发回CDN服务进程,这样一来就可以叠加CDN 的加速和缓存效果。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。
图1是本申请第一实施例提供的业务处理方法的流程示意图;
图2是本申请第二实施例提供的业务处理方法的流程示意图;
图3是本申请第二实施例提供的业务处理方法的原理框架图;
图4是本申请第二实施例提供的业务处理方法的示例图;
图5是本申请第三实施例提供的业务处理方法的流程示意图;
图6是本申请第四实施例提供的业务处理装置的模块结构示意图;
图7是本申请第五实施例提供的服务端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本申请各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。
本申请的第一实施例涉及一种业务处理方法,通过接收CDN用户下发的定制业务逻辑,接收与定制业务逻辑对应的用户请求,转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,在执行进程内依据定制业务逻辑,处理并响应用户请求。由于定制业务逻辑是在受限命名空间的执行进程中运行,而受限命名空间限制访问CDN系统文件和调用系统关键接口,以及限制资源的最大使用,因此定制业务逻辑不能越权做业务之外的事情,从而可以减少定制业务逻辑对CDN节点的安全性的影响。另外,与采用容器的方法相比,由于进程对资源的开销更小,因此在执行进程中实现该方案可以使CDN节点的资源使用更充分,同时可以叠加CDN既有的加速和缓存优势。
应当说明的是,本申请实施例提供的业务处理方法的执行主体包括但不限于CDN节点,其中,CDN节点可以是由一个CDN服务器或多个CDN服务器组成的集群来实现,除此以外也可以在非CDN集群上部署。
本申请实施例提供的业务处理方法的具体流程如图1所示,包括以下步骤:
S101:接收CDN用户下发的定制业务逻辑。
其中,CDN用户下发定制业务逻辑时,可以通过与CDN节点连接的服务平台编写定制业务逻辑,再将编写好的定制业务逻辑发送至CDN节点。CDN用户的下发动作之前,还可以包括编写定制业务逻辑的动作,可以是根据在线编辑平台的预设脚本语言,由CDN用户自行编写或者由第三方编写后交付所述CDN用户,而不是由CDN服务商自行编写。
可选地,定制业务逻辑可以包括代码文件和对应的配置信息,其中,代码文件以代码形式描述业务的处理逻辑,配置信息可以包括代码文件的执行条件或启动参数等。即在CDN节点中可以运行用户自行编写的代码脚本,支持动态加载,不依赖版本升级,使得用户可以自行编写业务逻辑。
当CDN节点接收到CDN用户下发的定制业务逻辑之后,可以将其保存至指定目录中。可选地,CDN节点可以将配置信息与代码文件一起存储在指定目录,也可以将配置信息存储在专门存储配置信息的目录中。
由于定制业务逻辑是运行于受限命名空间内的,与CDN节点服务进程相隔离,因此定制业务逻辑采用的语言没有具体限制,可以支持脚本语言,也可以支持其它高级语言。相应地,定制业务逻辑的文件形式也可以是多种。
S102:接收与定制业务逻辑对应的用户请求。
其中,用户请求是指与定制业务逻辑对应的请求,具体可以为应用层协议的请求,例如是http或https请求等。
CDN节点在判断请求是否与定制业务逻辑对应时,可以根据定制业务逻辑的执行条件来判断,具体可以根据请求的域名和/或预设的触发条件进行判断,当请求与定制业务逻辑对应的域名和/或预设的触发条件相符时,判定接收到与定制业务逻辑对应的用户请求。具体的执行条件可以由CDN用户根据实际需要在定制业务逻辑中进行设置,此处不做具体限制。
例如,若定制业务逻辑为对A域名的请求的定制业务逻辑,则接收到域名为“www.A.com”的请求时,CDN节点可以判定该请求为与定制业务逻辑对应的用户请求;又例如,若定制业务逻辑为对A域名且请求IP地址为上海区域的IP地址的请求的定制业务逻辑,则接收到域名为“www.A.com”且请求的IP地址为上海区域的IP地址时,CDN节点可以判定该请求为与定制业务逻辑对应的用户请求。
S103:转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,其中,受限命名空间被限制的内容包括访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源。
其中,访问CDN系统文件包括读写CDN节点的系统文件,而关键系统接口包括影响CDN节点服务进程运行的系统API,例如停止服务进程、断开网络连接等可以影响到CDN节点服 务进程运行的系统API。由于受限命名空间限制访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源,而执行进程在受限命名空间内运行,因此相应地,执行进程也限制访问CDN系统文件和调用关键系统接口,也无法超过系统的限制占用系统资源。
可选地,CDN节点可以通过CDN节点服务进程将定制业务逻辑与用户请求转发至受限命名空间的执行进程中。
S104:在执行进程内依据定制业务逻辑,处理并响应用户请求。
可选地,用户请求在执行进程中通过定制业务逻辑处理之后,执行进程将处理的结果返回给CDN节点服务进程,由CDN节点服务进程对用户请求进行响应。应当理解的是,这里的用户一般指个人用户,而CDN用户则一般指企业用户。由于执行进程没有访问CDN系统文件的内容,因此将执行进程处理的结果返回至CDN节点服务进程,由CDN节点服务进程根据处理的结果进行响应,可以在保证CDN节点服务进程的安全性的同时实现CDN用户相应的定制业务。
可选地,在对用户请求进行处理时,可以是直接采用执行进程运行定制业务逻辑,也可以由执行进程创建的线程来运行定制业务逻辑。可以理解的是,通过执行进程的线程来加载并运行定制业务逻辑,可以将多个定制业务逻辑放入同一个进程中的线程中(例如将每一个定制业务逻辑作为该线程的其中一个代码段)运行,因此可以减少受限命名空间的进程数,进而减少受限命名空间占用的内存。
可选地,执行进程为动态解析器,支持高级语言的动态解释。具体地,CDN节点可以利用执行进程将定制业务逻辑的代码文件进行实时编译,得到可在CDN节点运行的可执行代码后,再运行可执行代码对用户请求进行处理。
可选地,定制业务逻辑包括所述CDN用户下发的执行脚本和对应的配置文件,即定制业务逻辑的代码文件为脚本形式。
值得一提的是,在运行定制业务逻辑时,除了传统的将定制业务逻辑加载至CDN节点服务进程来运行的方法之外,还可以将定制业务逻辑放在容器里运行。由于容器的虚拟化架构可以很好地与CDN服务器上其它的服务进程相隔离,因此可以很好地保证CDN节点的安全性;然而,容器会占用CDN服务器较多的资源,若采用容器来运行定制业务逻辑,会使CDN节点的性能开销增大。而本申请实施例提供的业务处理方法,将定制业务逻辑放在受限命名空间的执行进程中运行,同样可以保证CDN节点的安全性;而且,由于进程对资源的开销更小,因此相对于容器的方法而言,本申请实施例提供的业务处理方法,可以提高CPU的处理效率,从而提高CDN节点的整体的服务性能。
本申请实施例提供的业务处理方法,通过接收CDN用户下发的定制业务逻辑,接收与定制业务逻辑对应的用户请求,转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,根据执行进程内运行的定制业务逻辑处理并响应用户请求。由于定制业务逻辑是在受限命名空间的执行进程中运行的,而受限命名空间限制访问CDN系统文件和调用系统关键接口,因此在受限命名空间的执行进程中运行的定制业务逻辑不能越权做业务之外的事情,从而可以减少定制业务逻辑对CDN节点的安全性和稳定性的影响;另外,与采用容器的方法相比,由于进程对资源的开销更小,因此在执行进程中实现该方案可以提高CDN节点的整体服务性能。
本申请的第二实施例涉及一种业务处理方法,在本申请实施例中,通过管理进程将用户请求转发至受限命名空间的执行进程中,管理进程和执行进程可以理解为CDN节点中的边缘应用内的进程。边缘应用是独立于CDN节点服务进程的一个运行环境,与CDN节点服务进程之间资源隔离、进程之间相互不影响。边缘应用与CDN节点服务进程可以同机部署,也可以独立部署。请求数据从CDN节点服务进程转至边缘应用中处理,例如,边缘应用启动一个监听服务,用于接收触发事件的请求,当收到CDN节点服务进程转发的触发事件如用户请求后,根据用户请求加载代码和配置文件,并启动边缘应用运行,边缘应用运行时环境实时编译和执行用户请求对应的定制业务逻辑。处理结果返回给CDN节点服务进程完成后续流程,以复用CDN的加速和缓存的既有优势。另外,边缘应用可以采用按需启动模式而非常驻模式,以提高资源利用率。边缘应用运行在一个沙箱环境中,这个沙箱环境可以限制进程的使用资源,如CPU、内存等,边缘应用的运行环境包括但不限于沙箱,也可以是容器或者虚拟机。
本申请实施例提供的业务处理方法的具体流程如图2所示,包括以下步骤:
S201:接收CDN用户下发的定制业务逻辑。
其中,S201与第一实施例中的S101相同,具体可以参见第一实施例的相关描述,为了避免重复,这里不再赘述。
S202:CDN节点服务进程根据用户请求的过滤条件,将用户请求转发至边缘应用的管理进程,其中,过滤条件包括用户请求的域名、定制请求头或定制URL参数,CDN节点服务进程与管理进程通过进程间通讯方式交互。
可选地,CDN节点服务进程可以根据用户请求的域名、定制请求头或定制URL参数与业务逻辑的域名和/或触发条件进行判断,将符合要求的用户请求转发至管理进程。
可选地,CDN节点服务进程、管理进程和执行进程部署在同一个CDN节点或节点集群内。
可选地,管理进程用于管理受限命名空间内的执行进程,执行进程可以为一个也可以为多个。当执行进程为多个时,管理进程将用户请求和定制业务逻辑转发至其中一个执行进程。而将定制业务逻辑转发至执行进程,是指将定制业务逻辑的文件转发至执行进程。
可选的,若无执行进程,则启动一个执行进程加载代码和配置文件。管理进程根据用户请求,选择第一执行进程加载代码和配置文件,并将请求转发至该执行进程处理业务逻辑。
管理进程可以增加或减少第一执行进程的数量,在增加或减少执行进程的数量时,可以在已有的执行进程的负载已达到第一预设阈值时增加,在某一执行进程的负载低于第二预设阈值时减少。例如,若受限命名空间内的所有的执行进程的负载都达到第一预设阈值(例如80%),则增加一个新的执行进程;若受限命名空间的某一执行进程的负载低于第二预设阈值(例如10%),则结束该执行进程。
可选的,在接收到更新的定制业务逻辑后,若更新前的定制业务逻辑当前处于执行过程中,则创建一个执行进程;创建的执行进程用于执行更新的定制业务逻辑;更新前的定制业务逻辑所在的执行进程在执行过程结束后进行撤销。也就是说,若在旧定制业务逻辑执行过程中,接收到了更新的定制业务逻辑,则管理进程可以新增一个执行进程,加载新的业务代码,并将收到的新的该业务的请求转发至此新的执行进程处理,旧的执行进程仍将继续处理已收到的请求,直到全部处理完后自行销毁。
可选地,管理进程还用于均衡不同CDN节点内的执行进程的负载,即若当前CDN节点的受限命名空间内的执行进程已达到第二预设负载,且用户请求为当前CDN节点新接收到的请求,则将用户请求转发至另一CDN节点的受限命名空间内的执行进程,以供另一CDN节点的执行进程运行定制业务逻辑对用户请求进行处理。其中,第二预设负载可以根据实际需要进行设置,例如是80%、85%或90%等,其与第一预设负载的具体取值可以相同也可以不同。通过管理进程调整不同节点的执行进程的负载,可以使不同节点的执行进程可以得到负载的均衡,避免单一CDN节点负载过大而造成服务故障。实际应用中,可以使用CDN已有的负载均衡技术来实现每个节点上的进程均处于一个合理的水平。例如,若某一节点的执行进程较为空闲,则可以利用CDN的负载均衡功能将请求转发至该节点上进行处理。
通过用户请求的过滤条件,将符合要求的用户请求转发至管理进程,可以使用户请求得到定制业务逻辑的响应,实现CDN的定制化功能。
S203:边缘应用的管理进程依据用户请求,调取对应的定制业务逻辑,将用户请求和定制业务逻辑转发至边缘应用的执行进程中。
其中,管理进程运行于受限命名空间之外,在接收到用户请求时,根据用户请求在CDN 节点中指定位置调取对应的定制业务逻辑,再将调取后的定制业务逻辑和用户请求转发至受限命名空间的执行进程中。
通过管理进程调取对应的定制业务逻辑,可以使CDN节点服务进程只需要将用户请求转发至管理进程即可,不需要进行定制业务逻辑的调取,提高了CDN节点服务进程的运行效率。
S204:在执行进程内依据定制业务逻辑,处理并响应用户请求。
其中,S204与第一实施例中的S104相同,具体可以参见第一实施例中的相关描述,为了避免重复,这里不再赘述。
可选地,若用户请求的响应不为空,则利用管理进程将用户请求对应的响应内容和定制业务逻辑转发至执行进程。例如,若用户请求命中在CDN节点命中缓存文件,则CDN节点利用管理进程将命中的缓存文件和定制业务逻辑一起转发至执行进程,以供执行进程对缓存文件进行相应的处理,从而实现相应的定制业务逻辑。由于受限命名空间没有访问CDN系统文件的权限,因此,将用户请求对应的响应内容和定制业务逻辑一起转发至受限命名空间内的执行进程,可以使执行进程可以对响应内容进行相应的处理,从而实现相应的定制业务逻辑。
可选地,若CDN节点没有命中缓存需要回源时,由CDN节点服务进程进行回源。通过CDN节点服务进程来执行回源,而不是采用CDN节点的缓存进程来回源,可以使缓存进程不再跟业务耦合,提高缓存进程的运行效率。
可选地,若用户请求在执行进程内的执行时间大于预设时间阈值,则结束用户请求所在的执行进程。其中,预设时间阈值可以根据实际需要进行设置,此处不做具体限制。在用户请求的执行时间大于预设时间阈值时,结束定制业务逻辑所在的执行进程,可以避免相应的执行进程一直占用CDN节点的资源,造成资源独占的情况,保证CDN节点的正常运行。
请参考图3,其为本申请实施例提供的业务处理方法的原理框架图。具体地,CDN节点服务进程与管理进程通过进程间通讯方式进行交互,管理进程位于受限命名空间外,在接收到请求时,CDN节点服务进程将符合要求的用户请求转发至管理进程,管理进程再将用户请求和业务逻辑转发至受限命名空间的执行进程中,对用户请求进行处理,执行进程将对用户请求处理的结果返回给管理进程,管理进程再将处理的结果返回给CDN节点服务进程,由CDN节点服务进程对用户请求进行响应。
请参考图4,其为本申请实施例提供的业务处理方法的示例图。图4中,动态执行进程包括管理进程和执行进程(图中未示出)。具体地,1、用户请求在CDN节点中命中缓存;2、CDN节点服务进程将用户请求对应的响应内容转发至动态执行进程的管理进程,管理进程将 响应请求、定制业务逻辑和响应内容转发至执行进程进行处理,在处理后执行进程将处理的结果返回至管理进程;3、管理进程再将处理的结果返回至CDN节点服务进程;4、CDN节点服务进程将处理的结果响应给用户。应当说明的是,图4以命中缓存后请求响应的执行阶段为例进行说明,实际上,其它执行阶段的执行过程与图4的执行过程类似,可以参考图4的执行过程,此处不再一一描述。
可以理解的是,在本申请实施例中,定制业务逻辑的运行在接收到用户请求之后,即在接收到用户请求之后再运行定制业务逻辑对用户请求进行处理,这样会造成一定的响应时延。但由于定制业务逻辑一般带有一定的计算量,与定制业务逻辑的计算量需要的时间相比,在接收到请求后再运行定制业务逻辑造成的响应时延基本上可以忽略不计。
本申请实施例提供的业务处理方法,通过先将用户请求转发至管理受限命名空间内的执行进程的管理进程,再由管理进程将用户请求和定制业务逻辑转发至执行进程,由于CDN节点服务进程只需要将与定制业务逻辑相关的请求转发即可,不需要获取相应的定制业务逻辑并发送,也不需要管理受限命名空间内的执行进程,因此可以减少CDN节点服务进程的负担,提高CDN节点服务进程的运行效率。
本申请的第三实施例涉及一种业务处理方法,在本申请实施例中,在接收到用户请求之前,管理进程启动监听服务等待接收用户请求,在接收到用户请求之后,根据用户请求,启动一个执行进程或在已有的执行进程中加载对应的业务代码和配置,再将用户请求转发至定制业务逻辑所在的执行进程中。
本申请实施例提供的业务处理方法的具体流程如图5所示,包括以下步骤:
S301:接收CDN用户下发的定制业务逻辑。
其中,S301与第一实施例中的S101相同,具体可以参见第一实施例中的相关描述,为了避免重复,这里不再赘述。
S302:在接收到用户请求之前,利用管理进程将定制业务逻辑转发至执行进程中的其中一个。
即在接收到用户请求之前,CDN节点先利用管理进程将定制业务逻辑转发至执行进程中的其中一个运行。
S303:CDN节点服务进程根据用户请求的过滤条件,将用户请求转发至管理进程,其中,过滤条件包括用户请求的域名、定制请求头或定制URL参数,CDN节点服务进程与管理进程通过进程间通讯方式交互。
其中,S303与第二实施例中的S202相同,具体可以参见第二实施例中的相关描述,这里 不再赘述。
S304:利用管理进程将用户请求转发至定制业务逻辑所在的执行进程中。
由于执行进程为多个,而管理进程负责管理多个执行进程并在接收到用户请求在其中一个执行进程内运行定制业务逻辑,因此,在接收到用户请求之后,管理进程可以将用户请求转发至定制业务逻辑所在的执行进程中。
在一个例子中,在接收到用户请求之前,可以利用管理进程将多个定制业务逻辑转发至执行进程中的其中一个,在转发的用户请求大于一个的情况下,可以根据不同的用户请求动态切换不同的定制业务逻辑,处理并响应用户请求。也就是说,若同时有不同的用户请求转发至执行进程,执行进程可以同时加载多份业务代码,根据不同的用户请求动态切换不同的业务代码,减少执行进程空闲等待的时间。
在一个例子中,对于第一次接收到的用户请求,则根据该用户请求将对应的业务代码和相关配置加载至执行进程中,再将该用户请求转发至对应的执行进程;若执行进程已加载过相应的业务代码,则执行进程先切换至对应的业务代码,再处理收到的业务请求。
S305:依据定制业务逻辑在执行进程内,处理并响应用户请求。
其中,S305与第二实施例中的S204相同,具体可以参见第一实施例中的相关描述,这里不再赘述。
在本实施例中,是通过启动一个监听服务接收CDN节点服务进程转发的用户请求的方式,触发定制业务逻辑的执行,在其他例子中,也可以通过设置定时任务自行启动,例如通过触发事件下发启动时间和相关的业务代码和配置文件信息,边缘应用即可定时执行相关的定制业务逻辑,如定时汇总CDN的日志上报等。
本申请实施例提供的业务处理方法,通过在接收到用户请求之前,利用管理进程将定制业务逻辑转发至执行进程中的其中一个,在接收到用户请求之后,利用管理进程将用户请求转发至定制业务逻辑所在的执行进程中。由于定制业务逻辑在接收到用户请求之前运行,因此在接收到用户请求后,可以立即对用户请求进行处理和响应,提高了用户请求处理和响应的速度。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本申请第四实施例涉及一种业务处理装置400,如图6所示,包括第一接收模块401、第 二接收模块402、转发模块403和处理模块404,各模块功能详细说明如下:
第一接收模块401,用于接收CDN用户下发的定制业务逻辑;
第二接收模块402,用于接收与定制业务逻辑对应的用户请求;
转发模块403,用于转发定制业务逻辑与用户请求至一个受限命名空间的执行进程中,其中,命名空间被限制的内容包括访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源;
处理模块404,用于在执行进程内依据定制业务逻辑,处理并响应用户请求。
进一步地,转发模块403还用于:
将定制业务逻辑与用户请求经由管理进程转发至执行进程,其中,管理进程用于管理受限命名空间内的执行进程,执行进程至少为一个。
进一步地,第二接收模块402还用于:
CDN节点服务进程根据用户请求的过滤条件,将用户请求转发至管理进程,其中,过滤条件包括用户请求的域名、定制请求头或定制URL参数,CDN节点服务进程与管理进程通过进程间通讯方式交互。
进一步地,转发模块403还用于:
管理进程依据用户请求,调取对应的定制业务逻辑,将用户请求和定制业务逻辑转发至执行进程中。
进一步地,本申请实施例提供的业务处理装置400还包括预运行模块,预运行模块用于:
在接收到用户请求之前,利用管理进程将定制业务逻辑转发至执行进程中的其中一个;
转发模块403还用于:
利用管理进程将用户请求转发至定制业务逻辑所在的执行进程中。
在一个例子中,预运行模块具体用于在接收到用户请求之前,利用管理进程将多个定制业务逻辑转发至执行进程中的其中一个;处理模块404具体用于在转发的所述用户请求大于一个的情况下,根据不同的所述用户请求动态切换不同的定制业务逻辑,处理并响应所述用户请求。
进一步地,管理进程还用于均衡不同CDN节点内的执行进程的负载。
进一步地,CDN节点服务进程、管理进程和执行进程部署在同一个CDN节点或节点集群内。
进一步地,本申请实施例提供的业务处理装置400还包括超时模块,其中,超时模块 用于:
在用户请求在执行进程内的执行时间大于预设时间阈值时,结束用户请求所在的执行进程。
进一步地,执行进程为动态解析器,支持高级语言的动态解释。
进一步地,定制业务逻辑包括CDN用户下发的执行脚本和对应的配置文件。
进一步地,在接收到更新的定制业务逻辑后,转发模块还用于在更新前的定制业务逻辑当前处于执行过程中的情况下,将用户请求转发至新创建的执行进程,新创建的执行进程用于执行更新的定制业务逻辑;更新前的定制业务逻辑所在的执行进程在执行过程结束后进行撤销。判断当前的执行进程是否存在新旧业务过渡的阶段,若是,则将新进请求全部转发至含有新的业务代码的执行进程,确保旧业务逻辑平滑过渡至新的业务逻辑。
不难发现,本实施例为与前述实施例相对应的装置实施例,本实施例可与前述实施例互相配合实施。前述实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在前述实施例中。
值得一提的是,本实施例中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本申请的创新部分,本实施例中并没有将与解决本申请所提出的技术问题关系不太密切的单元引入,但这并不表明本实施例中不存在其它的单元。
本申请第五实施例涉及一种服务端,如图7所示,包括至少一个处理器501;以及,与至少一个处理器501通信连接的存储器502;其中,存储器502存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行,以使至少一个处理器501能够执行上述的业务处理方法。
其中,存储器502和处理器501采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器501和存储器502的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器501处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器501。
处理器501负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器502可以被用于存储处理器501在执行操 作时所使用的数据。
本申请第六实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本申请的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。

Claims (15)

  1. 一种业务处理方法,包括:
    接收CDN用户下发的定制业务逻辑;
    接收与所述定制业务逻辑对应的用户请求;
    转发所述定制业务逻辑与所述用户请求至一个受限命名空间的执行进程中,其中,所述受限命名空间被限制的内容包括访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源;
    在所述执行进程内依据所述定制业务逻辑,处理并响应所述用户请求。
  2. 根据权利要求1所述的业务处理方法,其中,所述转发所述定制业务逻辑与所述用户请求至一个受限命名空间的执行进程中,包括:
    将所述定制业务逻辑与所述用户请求经由管理进程转发至所述执行进程,其中,所述管理进程用于管理所述受限命名空间内的执行进程,所述执行进程至少为一个。
  3. 根据权利要求2所述的业务处理方法,其中,所述接收与所述定制业务逻辑对应的用户请求,包括:
    CDN节点服务进程根据所述用户请求的过滤条件,将所述用户请求转发至所述管理进程,其中,所述过滤条件包括所述用户请求的域名、定制请求头或定制URL参数,所述CDN节点服务进程与所述管理进程通过进程间通讯方式交互。
  4. 根据权利要求3所述的业务处理方法,其中,所述转发所述定制业务逻辑与所述用户请求至一个受限命名空间的执行进程中,包括:
    所述管理进程依据所述用户请求,调取对应的所述定制业务逻辑,将所述用户请求和所述定制业务逻辑转发至所述执行进程中。
  5. 根据权利要求3所述的业务处理方法,其中,还包括:
    在接收到所述用户请求之前,利用所述管理进程将所述定制业务逻辑转发至所述执行进程中的其中一个;
    所述转发所述定制业务逻辑与所述用户请求至一个受限命名空间的执行进程中,包括:
    利用所述管理进程将所述用户请求转发至所述定制业务逻辑所在的执行进程中。
  6. 根据权利要求5所述的业务处理方法,其中,所述在接收到所述用户请求之前,利用所述管理进程将所述定制业务逻辑转发至所述执行进程中的其中一个,包括:
    在接收到所述用户请求之前,利用所述管理进程将多个所述定制业务逻辑转发至所述执行进程中的其中一个;
    所述在所述执行进程内依据所述定制业务逻辑,处理并响应所述用户请求,包括:
    在转发的所述用户请求大于一个的情况下,根据不同的所述用户请求动态切换不同的定制业务逻辑,处理并响应所述用户请求。
  7. 根据权利要求2所述的业务处理方法,其中,所述管理进程还用于调整CDN节点内的不同执行进程的负载。
  8. 根据权利要求3所述的业务处理方法,其中,所述CDN节点服务进程、所述管理进程和所述执行进程部署在同一个CDN节点或节点集群内。
  9. 根据权利要求1所述的业务处理方法,其中,还包括:
    若所述用户请求在所述执行进程内的执行时间大于预设时间阈值,则结束所述用户请求所在的执行进程。
  10. 根据权利要求1所述的业务处理方法,其中,还包括:
    在接收到更新的定制业务逻辑后,若所述更新前的定制业务逻辑当前处于执行过程中,则创建一个执行进程;所述创建的执行进程用于执行所述更新的定制业务逻辑;所述更新前的定制业务逻辑所在的执行进程在所述执行过程结束后进行撤销。
  11. 根据权利要求1所述的业务处理方法,其中,所述执行进程为动态解析器,支持高级语言的动态解释。
  12. 根据权利要求3所述的业务处理方法,其中,若所述CDN节点没有命中缓存时,由所述CDN节点服务进程进行回源。
  13. 根据权利要求3所述的业务处理方法,其中,还包括:
    在所述执行进程内依据所述定制业务逻辑,处理并响应所述用户请求后,所述执行进程将所述用户请求转发回所述CDN节点服务进程。
  14. 根据权利要求1所述的业务处理方法,其中,所述定制业务逻辑包括所述CDN用户下发的代码文件和对应的配置文件。
  15. 一种业务处理装置,包括:
    第一接收模块,用于接收CDN用户下发的定制业务逻辑;
    第二接收模块,用于接收与所述定制业务逻辑对应的用户请求;
    转发模块,用于转发所述定制业务逻辑与所述用户请求至一个受限命名空间的执行进程中,其中,所述命名空间被限制的内容包括访问CDN系统文件和调用关键系统接口,以及所能使用的系统资源;
    处理模块,用于在所述执行进程内依据所述定制业务逻辑,处理并响应所述用户请求。
PCT/CN2021/130981 2021-01-28 2021-11-16 业务处理方法及装置 WO2022160872A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP21922462.3A EP4287023A4 (en) 2021-01-28 2021-11-16 SERVICE PROCESSING METHOD AND DEVICE
US18/194,616 US20230254312A1 (en) 2021-01-28 2023-03-31 Service processing method and device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110118441.1A CN112988378A (zh) 2021-01-28 2021-01-28 业务处理方法及装置
CN202110118441.1 2021-01-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/194,616 Continuation US20230254312A1 (en) 2021-01-28 2023-03-31 Service processing method and device

Publications (1)

Publication Number Publication Date
WO2022160872A1 true WO2022160872A1 (zh) 2022-08-04

Family

ID=76345658

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/130981 WO2022160872A1 (zh) 2021-01-28 2021-11-16 业务处理方法及装置

Country Status (4)

Country Link
US (1) US20230254312A1 (zh)
EP (1) EP4287023A4 (zh)
CN (1) CN112988378A (zh)
WO (1) WO2022160872A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988378A (zh) * 2021-01-28 2021-06-18 网宿科技股份有限公司 业务处理方法及装置
CN115842722A (zh) * 2021-09-18 2023-03-24 贵州白山云科技股份有限公司 业务实现方法、装置、系统、计算机设备及存储介质
CN114827276B (zh) * 2022-04-22 2023-10-24 网宿科技股份有限公司 基于边缘计算的数据处理方法、设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754699B2 (en) * 2000-07-19 2004-06-22 Speedera Networks, Inc. Content delivery and global traffic management network system
CN103329113A (zh) * 2010-10-10 2013-09-25 阿卡麦科技公司 配置用于分级高速缓存的代理服务器以及动态站点加速和自定义对象和相关的方法
CN112988378A (zh) * 2021-01-28 2021-06-18 网宿科技股份有限公司 业务处理方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003060707A1 (en) * 2002-01-11 2003-07-24 Akamai Technologies, Inc. Java application framework for use in a content delivery network (cdn)
US8583763B1 (en) * 2012-09-19 2013-11-12 Edgecast Networks, Inc. Sandboxing content optimization at the network edge
CN102999317B (zh) * 2012-12-30 2015-12-23 北京讯鸟软件有限公司 面向多租户的弹性多进程服务处理方法
CN109067890B (zh) * 2018-08-20 2021-06-29 广东电网有限责任公司 一种基于docker容器的CDN节点边缘计算系统
US10805323B1 (en) * 2020-03-02 2020-10-13 Cloudflare, Inc. Cloud computing platform that isolates suspicious third-party code in a distributed cloud computing network
CN111737032B (zh) * 2020-07-27 2020-11-20 腾讯科技(深圳)有限公司 一种基于微内核系统的子程序运行方法、装置和电子设备
CN112272190B (zh) * 2020-11-10 2022-05-31 网易(杭州)网络有限公司 一种数据访问方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754699B2 (en) * 2000-07-19 2004-06-22 Speedera Networks, Inc. Content delivery and global traffic management network system
CN103329113A (zh) * 2010-10-10 2013-09-25 阿卡麦科技公司 配置用于分级高速缓存的代理服务器以及动态站点加速和自定义对象和相关的方法
CN112988378A (zh) * 2021-01-28 2021-06-18 网宿科技股份有限公司 业务处理方法及装置

Also Published As

Publication number Publication date
CN112988378A (zh) 2021-06-18
EP4287023A4 (en) 2024-07-03
US20230254312A1 (en) 2023-08-10
EP4287023A1 (en) 2023-12-06

Similar Documents

Publication Publication Date Title
WO2022160872A1 (zh) 业务处理方法及装置
US8589920B2 (en) Resource allocation
CN113596110B (zh) 一种面向异构云的云原生微服务平台
US20210058338A1 (en) Method and system for managing applications
US11301562B2 (en) Function execution based on data locality and securing integration flows
US20130191526A1 (en) Open plug-in management platform and plug-in management method implemented on browser
KR20060051932A (ko) 소프트웨어를 실행 동안 업데이트하는 시스템, 방법 및컴퓨터-판독가능 매체
US20140033190A1 (en) System and method for supporting version based routing in a transactional middleware machine environment
WO2022179423A1 (zh) 虚拟化处理系统、方法、装置及设备
US11743117B2 (en) Streamlined onboarding of offloading devices for provider network-managed servers
US10728169B1 (en) Instance upgrade migration
CN112783570B (zh) 基于服务网格的应用迁移方法、系统和介质
CN111796908A (zh) 一种资源自动弹性伸缩的系统、方法及云平台
WO2021164163A1 (zh) 一种请求处理方法、装置、设备及存储介质
CN112433863A (zh) 微服务调用方法、装置、终端设备以及存储介质
CN110543315B (zh) 一种kbroker分布式操作系统、存储介质和电子设备
WO2017107483A1 (zh) 一种虚拟化网管文件下载负载均衡的方法及网管服务器
CN110569043B (zh) 一种多用户的kbroker分布式操作系统和多用户管理系统
CN101236510B (zh) 一种ejb集群的失败恢复处理方法及系统
US20230273801A1 (en) Method for configuring compute mode, apparatus, and computing device
CN116800616A (zh) 虚拟化网络设备的管理方法及相关装置
CN110855787A (zh) 基于Consul实现OpenResty动态负载均衡的方法
CN113515458B (zh) 基于Envoy插件降低测试环境资源消耗的方法及系统
US9715412B2 (en) System and method for supporting session management in a distributed transactional service system
WO2013188691A1 (en) System and method for supporting implicit versioning in a transactional middleware machine environment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21922462

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2021922462

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021922462

Country of ref document: EP

Effective date: 20230828