Abstract:
Development tooling receives the extended Web services description language with call flow interactions. The development tooling allows the user to select trivial message exchanges in the call flow. The development tooling may generate servlets for the selected message exchanges automatically to form a template form of the application that will execute in the converged application engine. Alternatively, the development tooling may generate a template form of the application that may be interpreted in an interpretive engine. The user may then drop in higher level business logic. The automatically generated servlets, or template form of the application to be interpreted, are configured to pass to the Web services information, including the last message contents.
Abstract:
A network cluster is provided herein having a plurality of cluster members. In order to control the admission of client requests sent to the cluster, one member of the cluster is elected “reservation coordinator.” The reservation coordinator runs a reservation algorithm for controlling the distribution of rate capacity across members of the cluster. For example, each member of the cluster may reserve some amount of rate from the coordinator to allow for passing of client requests. To ensure that each member is provided with the appropriate rate capacity, each member of the cluster runs an estimation algorithm to determine whether or not additional rate capacity should be reserved from the reservation coordinator, or released back into the cluster for redistribution. The estimation algorithm is run in real-time and allows the admission control algorithm to adapt to changes in rate distribution.
Abstract:
In response to detecting a failed server, subscription message processing of a failover server is stopped. A subscription queue of the failed server is opened. A marker message is published to all subscribers of a particular messaging topic. The marker message includes an identification of the failover server managing the subscription queue of the failed server. Messages within the subscription queue of the failed server are processed. In response to determining that a message in the subscription queue of the failed server is the marker message, the subscription queue of the failed server is closed. Then, the failover server resumes processing of its original subscription queue looking for the marker message, while processing yet unseen messages from the queue. Once the marker message is found in the original subscription queue, normal operation is resumed.
Abstract:
Methods, apparatus, and products for administering feeds of presence information of one or more presentities including creating a feed definition; adding to the feed definition one or more identifications of presentities; receiving a feed request; creating the feed, the feed including presence information for presentities identified in the feed definition; and sending a response to the feed request including the feed.
Abstract:
An extended Web services description language (WSDL) is provided to allow for the merging of call flow XML with the interface description. This is accomplished through additional WSDL bindings for operations that associate an operation with segments or message points within the call flow. In addition, the extension to WSDL defines a set of interactions that provide additional semantics for how the operation interacts with the call flow. These interactions capture the interaction points between the WSDL. The WSDL interfaces that are created may be used for outbound interactions (i.e. initiated through Web services from some event within the call flow) or for the usual inbound request response. An additional lifecycle listener interface is used to convey different binding points between an enhanced converged Web service processing engine and a converged application implementation of the WSDL.
Abstract:
Development tooling receives the extended Web services description language with call flow interactions. The development tooling allows the user to select trivial message exchanges in the call flow. The development tooling may generate servlets for the selected message exchanges automatically to form a template form of the application that will execute in the converged application engine. Alternatively, the development tooling may generate a template form of the application that may be interpreted in an interpretive engine. The user may then drop in higher level business logic. The automatically generated servlets, or template form of the application to be interpreted, are configured to pass to the Web services information, including the last message contents.
Abstract:
A network cluster is provided herein having a plurality of cluster members. One member of the cluster (i.e., the “reservation coordinator”) is responsible for controlling the distribution of rate capacity across members of the cluster. In general, rate capacity may be distributed in a hierarchical fashion to account for the needs of the various services, applications and/or operations provided by the cluster members. More specifically, a hierarchical tree structure may be formed by distributing rate capacity among a plurality of nodes arranged at a global, service, application or operation level of the tree. In some cases, rate capacity may also be distributed at a requester level to account for the needs of requesters (i.e., users) who are granted access to the services, applications and operations provided by the cluster members. A method for distributing rate limits across members of a cluster and a method for tracking rate consumption for at least one member of a cluster are also provided herein.
Abstract:
Given a SIP call flow definition and WSDL extended with SIP/call flow interactions, a converged application integration (CAI) engine provides service-oriented application practitioners with an ability to reuse existing Web services integration techniques in a new converged application integration green space. The converged application integration engine “wraps” a pre-existing converged Web service/SIP or a SIP-only application, listens to application-specific signaling, and based on a supplied WSDL with SIP/call flow extensions, makes and accepts interaction requests using Web services. Given a SIP call flow definition, a WSDL extended with SIP/call flow interactions, and the converged application integration engine, a converged application execution (CAE) engine that greatly eases developing new converged applications. At runtime, the CAE engine “stitches” the signaling onto the decomposed servlet model by following the WSDL extended with SIP/call flow interactions. At appropriate binding points, the CAE engine invokes the listener callback interfaces.
Abstract:
An interface design tool may include a traditional call flow design view and a traditional WSDL interface design view. The call flow design view may allow for the grouping of the call flow into segments or exchanges, and allow for labeling of each message in the segment. The tooling then allows for the creation of a mapping between WSDL operations and the call flow. The mapping may be labeled with the interaction type. The output of the visual artifacts may then be a WSDL and call flow XML document, where the additional bindings are included for the operations that capture the interaction relationships.
Abstract:
Mechanisms for creating global sessions across different protocols and multiple converged protocol applications are provided. By creating a global session, state information for each of the individual protocol sessions may be communicated across protocols and utilized in performing operations across converged protocol applications. An edge server is used at the edge of a data network to correlate client interactions over different protocols and to associate them with a global session. The edge server acts as a session reference counter for individual client sessions that are part of a larger global session. The global session is created after the creation of the first protocol session and exists across the creation of future sessions on other protocols and other converged applications. Logical names and global session tokens are utilized to manage the various global sessions handled by the edge server.