发明名称 Scalable content delivery network request handling mechanism to support a request processing layer
摘要 Described herein are improved systems, methods, and devices for delivering and managing metadata in a distributed computing platform such as a content delivery network (CDN) so as to configure content servers to handle client requests. The teachings hereof provide, among other things, scalable and configurable solutions for delivering and managing metadata, preferably by leveraging dynamically obtained control information. For example, in one embodiment, a given content server may store metadata, e.g., in a configuration file, that references dynamic, late-bound control information for use in satisfying dependencies. This dynamic control information can be requested by the CDN content server, typically from a remote host, when needed to parse and execute the metadata.
申请公布号 US9509804(B2) 申请公布日期 2016.11.29
申请号 US201314135179 申请日期 2013.12.19
申请人 Akami Technologies, Inc. 发明人 Stevens Matthew J.;Shotton Frederick R.;Chen Tong
分类号 G06F15/16;H04L29/06;H04L29/08;H04L12/24 主分类号 G06F15/16
代理机构 代理人
主权项 1. A system, comprising: a first server managed by a content delivery network (CDN) service provider and comprising circuitry forming one or more processors coupled to memory holding non-transitory computer-program instructions to be executed by the one or more processors to cause the first server to: receive a first request from a client device over a network interface, the first request comprising an application programming interface (API) request; in response to the first request, determine a configuration file stored at the first server to apply for handling the request, the configuration file defining any of: recognized API endpoints and request forwarding instructions; identify, within the configuration file, a content control that indicates how to handle the first request from within a set of content controls stored at the first server in the configuration file; wherein the content control has a reference to an API endpoint content policy that controls, at least, request validation; extract an identifier from the first request, the extracted identifier comprising any of (i) at least part of a URI, (ii) at least part of a hostname, and (iii) at least part of a request header field; in response to the identification of the content control with the reference to the API endpoint content policy, send a second request that includes the extracted identifier to a remote host for the API endpoint content policy; receive the API endpoint content policy from the remote host in response to the second request, the API endpoint content policy comprising at least one of: (iv) an API resource model, and (v) an algorithm to compare the first request to an API resource model; wherein the API resource model comprises at least one of: (vi) designation of supported request methods, (vii) designation of valid URI path, (viii) designation of a valid URL query parameter resource, (ix) designation of arguments, parameters, or data necessary in requests; (x) designation of a parameter or limit specified for a user; apply the content control to the request at least by applying the API endpoint content policy to determine whether the first request conforms to the API resource model; after applying the content control and the API endpoint content policy, send at least a portion of the first request to a second server, the second server being an API origin for the API; the remote host comprising circuitry forming one or more processors coupled to memory holding non-transitory computer-program instructions to be executed by the one or more processors to cause the remote host to: receive the second request from the first server, with the extracted identifier; based at least in part on the extracted identifier, select the API endpoint content policy from amongst a plurality of API endpoint content policies stored at the remote host; send the API endpoint content policy to the first server, in response to the second request; wherein the first server is one of a plurality of distributed CDN servers, the first request is for a service accessible via the API, and the service enables any of: (i) interaction with a multi-tenant storage system operated by the CDN service provider on behalf of content providers, (ii) interaction with a multi-tenant computing system operated by the CDN service provider on behalf of content providers, and (iii) configuration by a CDN user of a CDN content delivery service, said configuration comprising configuration of CDN features and services for delivering any of a website and a web application on the CDN user's behalf over the CDN.
地址 Cambridge MA US