Patent ID: 7574524
Filing Date: 2009-08-11
Classification: H04L

Abstract:
1. A method implemented by a computing device for real-time dynamic switching between a first service provider providing a first Web-service for users via a program executing at a user's computer device over a communications network in accordance with a service level agreement between a user and said first service provider and a second service provider adapted for providing a second Web-based service for users at a user's computer device, said method comprising the steps of: automatically monitoring said first Web-based service for determining compliance of service-level guarantees according to said service level agreement by said first service provider at said user's computer device, said monitoring including accessing internal functioning of said first Web-based service that is currently in use; and, upon determining non-compliance of said service-level guarantees, locating said second service provider for providing said second Web service according to service-level guarantees compatible with needs of said executing program; maintaining state information that the program has created in the first Web service provided by said first service provider at said user's computer device; terminating said service level agreement between said user and said first service provider; and switching provision of said second Web service to said user's computer device from said second service provider over said communications network; and, migrating said state information maintained up to the time of switching to said second Web service provided by said second service provider, said state information including state information maintained by said first web service provider on behalf of the user, wherein the switching occurs in a manner substantially transparent to the user, wherein a switching criterion for initiating said switching includes one or more selected from the group comprising: the relative prevalence of advertisements or SPAM, the relative usability of a user interface provided at computer device, the relative cost of the service provided by said second service provider as compared to a cost of the service provided by first service provider, a relative cognitive load of a user, and, a relative security of said service provided by said second service as compared to the service provided by first service provider.