Maintaining and establishing subscriptions with load-balanced servers
AssigneeMicrosoft Corporation
InventorsRobert E. McCann, John L. Gibbon, Robert M. Congdon
Life of this patent
Estimating the term…
Abstract
A notification subscription application allows a subscriber to maintain event notification continuity in a load-balanced work environment. The notification subscription application proactively provides the subscriber notifications indicating an operating status of the subscription. In this manner, subscribers can reduce the number of missed event notifications, by readily reestablishing a subscription when required. The notification service associates markers with events such that event notifications occurring during a period of time when the notification subscription is not operating properly can be identified when the subscription is reestablished.
Claims17
A computer implemented method for providing event notifications for notification subscriptions from a plurality of load-balanced servers in a server tier to a client tier in a communications network, said method comprising:
- receiving, at the server tier, a first subscription request from a subscriber via the client tier, said subscription request defining an event of interest and an address in the client tier of the subscriber, said first subscription request including an expiration parameter from the client tier specifying a defined period of time after which to verify that the subscription is working properly, said subscription request being generated in response to input data received from the subscriber;
- creating, by a particular server of the server tier, a first notification subscription corresponding to the received first subscription request, wherein the particular server is designated to host the created first notification subscription;
- periodically querying a data tier maintaining an event log, and being queried by the particular server to identify relevant event data based on the first notification subscription;
- sending a notification request from the particular server of the server tier to the client tier to notify the client tier of the identified relevant event data;
- receiving, at the server tier, a second subscription request automatically generated at the subscriber via the client tier, the second subscription request defining the event of interest and the address in the client tier of the subscriber if the client tier does not receive the notification request from the particular server for a period of time specified by the expiration parameter;
- wherein the server tier receives the second subscription request and creates a second notification subscription corresponding to the received second subscription request independent of the particular server of the server tier, wherein the second subscription request includes an expiration parameter defined by a subscriber, said expiration parameter specifying a period of time after which the client tier is to be notified of the failure of the server tier to identify relevant event data;
- and
- wherein the subscriber via the client tier automatically sends a cancellation request for the first notification subscription in response to receiving a subsequent notification request associated with the first notification subscription.
A system for sending event notifications for notification subscriptions from a server tier to a client tier in a communications network, said system including a front-end server for performing the functions of said client tier, said system including a plurality of back-end servers for performing the functions of said server tier, said system comprising:
- a client tier for generating a first subscription request, said subscription request defining an event of interest and an address in the client tier of a subscriber, wherein the first subscription request includes an expiration parameter defined by a subscriber, said expiration parameter specifying a period of time after which the client tier is to be notified of the failure of the server tier to identify relevant event data;
- a server tier linked to the client tier for receiving the first subscription request and creating a first notification subscription on a first back-end server corresponding to the received first subscription request, said first back-end server being one of the plurality back-end servers, wherein the first back-end server is designated to host the notification subscription;
- a data tier for maintaining an event log maintained and being queried by the first back-end server to identify relevant event data based on the first notification subscription;
- wherein the first back-end server sends a notification request associated with the first subscription to the client tier to notify the client tier of the identified relevant event data;
- wherein the front end server automatically generates a second subscription request defining the event of interest and the address in the client tier of the subscriber if the client tier does not receive a notification request from the first back-end server for a period of time specified by the expiration parameter;
- wherein the server tier receives the second subscription request and creates a second notification subscription corresponding to the received second subscription request independent of the first back-end server of the server tier, wherein the second subscription request includes an expiration parameter defined by a subscriber, said expiration parameter specifying a period of time after which the client tier is to be notified of the failure of the server tier to identify relevant event data;
- and
- wherein the front end server automatically sends a cancellation request for the first notification subscription in response to receiving a subsequent notification request associated with the first notification subscription.
Dependencies are inferred from the claim text.