Java application framework for use in a content delivery network (CDN)
    1.
    发明授权
    Java application framework for use in a content delivery network (CDN) 有权
    用于内容传送网络(CDN)的Java应用程序框架

    公开(公告)号:US08392912B2

    公开(公告)日:2013-03-05

    申请号:US11584974

    申请日:2006-10-23

    IPC分类号: G06F9/445

    摘要: An application deployment model for enterprise applications to enable applications to be deployed to and executed from a globally distributed computing platform, such as an Internet content delivery network (CDN). According to the invention, application developers separate their Web application into two layers: a highly distributed edge layer and a centralized origin layer. In a representative embodiment, the edge layer supports a servlet container that executes a Web tier, typically the presentation layer of a given Java-based application. Where necessary, the edge layer communicates with code running on an origin server to respond to a given request. In an alternative embodiment, the edge layer supports a more fully-provisioned application server that executes both Web tier (e.g., presentation) and Enterprise tier application (e.g., business logic) components. In either case, the inventive framework enables one or more different applications to be deployed to and executed from the edge server on behalf of one or more respective entities.

    摘要翻译: 用于企业应用程序的应用程序部署模型,以使应用程序能够部署到全球分布式计算平台(如Internet内容传送网络(CDN))上并从其执行。 根据本发明,应用程序开发人员将其Web应用程序分为两层:高度分布的边缘层和集中的起始层。 在代表性的实施例中,边缘层支持执行Web层的servlet容器,通常是给定基于Java的应用程序的表示层。 必要时,边缘层与原始服务器上运行的代码进行通信,以响应给定的请求。 在替代实施例中,边缘层支持执行Web层(例如,呈现)和企业层应用(例如,业务逻辑)组件的更全面配置的应用服务器。 在任一种情况下,本发明的框架使一个或多个不同的应用程序能够代表一个或多个相应的实体部署到边缘服务器并从边缘服务器执行。

    Java application framework for use in a content delivery network (CDN)
    2.
    发明申请
    Java application framework for use in a content delivery network (CDN) 有权
    用于内容传送网络(CDN)的Java应用程序框架

    公开(公告)号:US20070038994A1

    公开(公告)日:2007-02-15

    申请号:US11584974

    申请日:2006-10-23

    IPC分类号: G06F9/445

    摘要: An application deployment model for enterprise applications to enable applications to be deployed to and executed from a globally distributed computing platform, such as an Internet content delivery network (CDN). According to the invention, application developers separate their Web application into two layers: a highly distributed edge layer and a centralized origin layer. In a representative embodiment, the edge layer supports a servlet container that executes a Web tier, typically the presentation layer of a given Java-based application. Where necessary, the edge layer communicates with code running on an origin server to respond to a given request. In an alternative embodiment, the edge layer supports a more fully-provisioned application server that executes both Web tier (e.g., presentation) and Enterprise tier application (e.g., business logic) components. In either case, the inventive framework enables one or more different applications to be deployed to and executed from the edge server on behalf of one or more respective entities.

    摘要翻译: 用于企业应用程序的应用程序部署模型,以使应用程序能够部署到全球分布式计算平台(如Internet内容传送网络(CDN))上并从其执行。 根据本发明,应用程序开发人员将其Web应用程序分为两层:高度分布的边缘层和集中的起始层。 在代表性的实施例中,边缘层支持执行Web层的servlet容器,通常是给定基于Java的应用程序的表示层。 必要时,边缘层与原始服务器上运行的代码进行通信,以响应给定的请求。 在替代实施例中,边缘层支持执行Web层(例如,呈现)和企业层应用(例如,业务逻辑)组件的更全面配置的应用服务器。 在任一种情况下,本发明的框架使一个或多个不同的应用程序能够代表一个或多个相应的实体部署到边缘服务器并从边缘服务器执行。

    Method for obtaining repeatable and predictable output results in a continuous processing system
    3.
    发明授权
    Method for obtaining repeatable and predictable output results in a continuous processing system 有权
    在连续处理系统中获得可重复和可预测输出的方法

    公开(公告)号:US08539502B1

    公开(公告)日:2013-09-17

    申请号:US11787912

    申请日:2007-04-18

    IPC分类号: G06F9/46 G06F7/00

    CPC分类号: G06F9/546 G06F2209/548

    摘要: The present invention provides a method for obtaining predicable and repeatable output results in a continuous processing system. The method involves processing messages and primitives in accordance with the following rules: (1) Messages are processed in accordance with timestamps, where messages are divided up into “time slices”; (2) message order within a data stream is preserved among messages with the same time stamp; (3) subject to rule #4, for each time slice, a primitive is executed when either the messages within such time slice show up in the input stream for such primitive or the state of the window immediately preceding such primitive changes due to messages within such time slice; and (4) for each time slice, primitives that are dependent on one or more upstream primitives are not executed until such upstream primitives have finished executing messages in such time slice that are queued for processing. If such rules are insufficient to determine the order in which primitives are processed, a deterministic “tie-breaking” rule is then applied.

    摘要翻译: 本发明提供一种在连续处理系统中获得可预测和可重复的输出结果的方法。 该方法涉及根据以下规则处理消息和原语:(1)消息根据时间戳进行处理,消息被划分为“时间片”; (2)在具有相同时间戳的消息之间保留数据流内的消息顺序; (3)根据规则#4,对于每个时间片,当在这样的时间片内的消息在这样的原语的输入流中显示时,或者由于由于消息内部的消息紧接在这样的原始改变之前的窗口的状态,执行原语 这样的时间片; 和(4)对于每个时间片,依赖于一个或多个上游基元的原语不被执行,直到这些上游原语已经完成在排队等待处理的时间片中执行消息。 如果这些规则不足以确定原语被处理的顺序,则应用确定性的“打破破产”规则。

    Method for guaranteeing processing of messages in a continuous processing system
    4.
    发明授权
    Method for guaranteeing processing of messages in a continuous processing system 有权
    确保连续处理系统中消息处理的方法

    公开(公告)号:US07818757B1

    公开(公告)日:2010-10-19

    申请号:US11487796

    申请日:2006-07-17

    摘要: A method for processing messages ensures that every message that enters a continuous processing system is fully processed in its entirety, even in the event of a failure within the system. Messages are pushed through an execution plan that includes a set of connected “primitives” that process the message, where the primitives may be distributed across a group of servers. Messages are pushed through in accordance with a protocol that does not permit unprocessed messages to be permanently lost as they travel from input sources, between primitives, and to output sources within the execution plan. The input queue, output queue, and state (if any) associated with each primitive are saved in persistent storage at select checkpoints. If a failure occurs on a server, the server, after it starts up again, restores the primitives on that server to the input queues, output queues, and states saved at the last applicable checkpoint.

    摘要翻译: 处理消息的方法确保进入连续处理系统的每个消息都被完全处理,即使在系统内发生故障的情况下也是如此。 消息被推送通过执行计划,包括一组处理消息的连接的“原语”,其中原语可以分布在一组服务器上。 消息按照协议进行推送,该协议不允许未处理的消息在输入源,原语之间以及执行计划中的输出源之间永久丢失。 与每个基元相关联的输入队列,输出队列和状态(如果有)保存在选定检查点的持久存储器中。 如果服务器发生故障,则服务器再次启动后,将该服务器上的原语恢复到上次适用检查点保存的输入队列,输出队列和状态。

    Edge side components and application programming environment for building and delivering highly distributed heterogenous component-based web applications
    5.
    发明授权
    Edge side components and application programming environment for building and delivering highly distributed heterogenous component-based web applications 有权
    边缘组件和应用程序编程环境,用于构建和提供高度分布式异构的基于组件的Web应用程序

    公开(公告)号:US07467233B2

    公开(公告)日:2008-12-16

    申请号:US11695466

    申请日:2007-04-02

    发明人: Daniel M. Lewin

    IPC分类号: G06F15/173

    摘要: A method is provided for processing an application on an edge server, wherein the application comprises a set of defined presentation, code and data components, each of which are preferably URI-addressable objects. In response to a client request, the presentation, code and data components are processed according to a set of metadata to generate a response, and the response is delivered to the client. The presentation components are typically content such as HTML fragments, WML fragments, or some combination thereof. The code components are typically Java servlets or beans, XSLT style sheets, or some combination thereof. The data components are typically XML files, native database formatted files, and the like. Each of the presentation, code and data components may have a distinct management profile, cacheability profile, deployment profile, invalidation profile, and security profile. These profiles are settable via metadata or other similar means. Using this framework, heterogenous components may be composed into other components and complete applications or services.

    摘要翻译: 提供了一种用于处理边缘服务器上的应用的方法,其中应用包括一组定义的表示,代码和数据组件,每个组件优选地是可寻址URI的对象。 响应于客户端请求,根据一组元数据来处理呈现,代码和数据组件以生成响应,并且将响应传递给客户端。 演示组件通常是诸如HTML片段,WML片段或其组合的内容。 代码组件通常是Java servlet或bean,XSLT样式表或其组合。 数据组件通常是XML文件,本地数据库格式的文件等。 演示文稿,代码和数据组件中的每一个可以具有不同的管理简档,高速缓存简档,部署配置文件,无效化配置文件和安全配置文件。 这些配置文件可以通过元数据或其他类似方式进行设置。 使用此框架,异构组件可以组成其他组件和完整的应用程序或服务。

    Edge side components and application programming environment for building and delivering highly distributed heterogenous component-based web applications
    6.
    发明申请
    Edge side components and application programming environment for building and delivering highly distributed heterogenous component-based web applications 有权
    边缘组件和应用程序编程环境,用于构建和提供高度分布式异构的基于组件的Web应用程序

    公开(公告)号:US20070180099A1

    公开(公告)日:2007-08-02

    申请号:US11695466

    申请日:2007-04-02

    IPC分类号: G06F15/173

    摘要: A method is provided for processing an application on an edge server, wherein the application comprises a set of defined presentation, code and data components, each of which are preferably URI-addressable objects. In response to a client request, the presentation, code and data components are processed according to a set of metadata to generate a response, and the response is delivered to the client. The presentation components are typically content such as HTML fragments, WML fragments, or some combination thereof. The code components are typically Java servlets or beans, XSLT style sheets, or some combination thereof. The data components are typically XML files, native database formatted files, and the like. Each of the presentation, code and data components may have a distinct management profile, cacheability profile, deployment profile, invalidation profile, and security profile. These profiles are settable via metadata or other similar means. Using this framework, heterogenous components may be composed into other components and complete applications or services.

    摘要翻译: 提供了一种用于处理边缘服务器上的应用的方法,其中应用包括一组定义的表示,代码和数据组件,每个组件优选地是可寻址URI的对象。 响应于客户端请求,根据一组元数据来处理呈现,代码和数据组件以生成响应,并且将响应传递给客户端。 演示组件通常是诸如HTML片段,WML片段或其组合的内容。 代码组件通常是Java servlet或bean,XSLT样式表或其组合。 数据组件通常是XML文件,本地数据库格式的文件等。 演示文稿,代码和数据组件中的每一个可以具有不同的管理简档,高速缓存简档,部署配置文件,无效化配置文件和安全配置文件。 这些配置文件可以通过元数据或其他类似方式进行设置。 使用此框架,异构组件可以组成其他组件和完整的应用程序或服务。

    Method for distributing processing of queries over a cluster of servers in a continuous processing system
    7.
    发明授权
    Method for distributing processing of queries over a cluster of servers in a continuous processing system 有权
    在连续处理系统中通过服务器集群分发处理查询的方法

    公开(公告)号:US07818313B1

    公开(公告)日:2010-10-19

    申请号:US11486902

    申请日:2006-07-14

    IPC分类号: G06F7/00 G06F17/30

    CPC分类号: G06F17/30545 Y10S707/966

    摘要: A method, in a continuous computation system, for processing a set of registered queries over a cluster of servers includes creating an execution plan for processing a set of queries over a cluster of servers, where the continuous computation system creates the execution plan by analyzing the semantics and requirements of the queries to determine how to distribute processing across the cluster. Analysis of a query can include determining whether input messages for the query can be processed independent of each other, whether input messages for the query can be partitioned into groups that can be processed independent of each other, whether the query includes an aggregator function, and whether the query includes a subquery.

    摘要翻译: 在连续计算系统中,用于在服务器集群上处理一组注册查询的方法包括创建用于在服务器集群上处理一组查询的执行计划,其中连续计算系统通过分析 查询的语义和要求,以确定如何在集群中分发处理。 查询的分析可以包括确定用于查询的输入消息是否可以彼此独立地被处理,查询的输入消息是否可被划分成可以被彼此独立地处理的组,查询是否包括聚合器功能,以及 查询是否包含子查询。

    Edge side components and application programming environment for building and delivering highly distributed heterogenous component-based web applications
    9.
    发明授权
    Edge side components and application programming environment for building and delivering highly distributed heterogenous component-based web applications 有权
    边缘组件和应用程序编程环境,用于构建和提供高度分布式异构的基于组件的Web应用程序

    公开(公告)号:US07734823B2

    公开(公告)日:2010-06-08

    申请号:US12334730

    申请日:2008-12-15

    IPC分类号: G06F15/173

    摘要: A method is provided for processing an application on an edge server, wherein the application comprises a set of defined presentation, code and data components, each of which are preferably URI-addressable objects. In response to a client request, the presentation, code and data components are processed according to a set of metadata to generate a response, and the response is delivered to the client. The presentation components are typically content such as HTML fragments, WML fragments, or some combination thereof. The code components are typically Java servlets or beans, XSLT style sheets, or some combination thereof. The data components are typically XML files, native database formatted files, and the like. Each of the presentation, code and data components may have a distinct management profile, cacheability profile, deployment profile, invalidation profile, and security profile. These profiles are settable via metadata or other similar means. Using this framework, heterogenous components may be composed into other components and complete applications or services.

    摘要翻译: 提供了一种用于处理边缘服务器上的应用的方法,其中应用包括一组定义的表示,代码和数据组件,每个组件优选地是可寻址URI的对象。 响应于客户端请求,根据一组元数据来处理呈现,代码和数据组件以生成响应,并且将响应传递给客户端。 演示组件通常是诸如HTML片段,WML片段或其组合的内容。 代码组件通常是Java servlet或bean,XSLT样式表或其组合。 数据组件通常是XML文件,本地数据库格式的文件等。 演示文稿,代码和数据组件中的每一个可以具有不同的管理简档,高速缓存简档,部署配置文件,无效化配置文件和安全配置文件。 这些配置文件可以通过元数据或其他类似方式进行设置。 使用此框架,异构组件可以组成其他组件和完整的应用程序或服务。

    Managing web tier session state objects in a content delivery network (CDN)
    10.
    发明申请
    Managing web tier session state objects in a content delivery network (CDN) 有权
    管理内容传送网络(CDN)中的Web层会话状态对象

    公开(公告)号:US20070271385A1

    公开(公告)日:2007-11-22

    申请号:US11834042

    申请日:2007-08-06

    IPC分类号: G06F15/16

    摘要: Business applications running on a content delivery network (CDN) having a distributed application framework can create, access and modify state for each client. Over time, a single client may desire to access a given application on different CDN edge servers within the same region and even across different regions. Each time, the application may need to access the latest “state” of the client even if the state was last modified by an application on a different server. A difficulty arises when a process or a machine that last modified the state dies or is temporarily or permanently unavailable. The present invention provides techniques for migrating session state data across CDN servers in a manner transparent to the user. A distributed application thus can access a latest “state” of a client even if the state was last modified by an application instance executing on a different CDN server, including a nearby (in-region) or a remote (out-of-region) server.

    摘要翻译: 在具有分布式应用程序框架的内容传送网络(CDN)上运行的业务应用程序可以为每个客户端创建,访问和修改状态。 随着时间的推移,单个客户端可能希望访问同一区域内甚至跨不同区域的不同CDN边缘服务器上的给定应用。 每次应用程序可能需要访问客户端的最新“状态”,即使该状态最后被不同服务器上的应用程序修改。 当最后修改状态的过程或机器死亡或临时或永久不可用时,会出现困难。 本发明提供了以对用户透明的方式跨CDN服务器迁移会话状态数据的技术。 因此,分布式应用程序可以访问客户端的最新“状态”,即使状态最后由在不同的CDN服务器上执行的应用程序实例进行修改,包括附近(区域内)或远程(区域外) 服务器。